public void improveUsingBrandLookups(AnalyzerConfigHolder config, MutableUserAgent userAgent, ClientHints clientHints) {
        String model = clientHints.getModel();
        if (model == null || model.isEmpty()) {
            return;
        }
        Map<String, String> amazonDeviceTags = config.getLookups().get("AmazonDeviceTags");
        if (amazonDeviceTags == null || amazonDeviceTags.isEmpty()) {
            return;
        }
        String betterValue = amazonDeviceTags.get(model.toLowerCase(Locale.ROOT));
        if (betterValue != null) {
            String[] split = betterValue.split("\\|", 3);
            overrideValue(userAgent.get(DEVICE_CLASS), split[0]);
            overrideValue(userAgent.get(DEVICE_BRAND), split[1]);
            overrideValue(userAgent.get(DEVICE_NAME), split[2]);
        }
    }
Some device names are "Generic" and thus must be overwritten if a Client hint is available.
analyzer/src/main/java/nl/basjes/parse/useragent/clienthints/ClientHintsAnalyzer.java