Use `zap-cli` for zap codegen instead of using third_party/zap/repo (#23664)

* Switch zap workflows to use chip-build image

* Remove zap third party submodule: we are using zap releases now

* Switch "node zap-generate.js" with "zap-cli generate"

* Undo openthread repo checkout

* Remove reference to manufacturers.xml from zap repo

* Remove references to third_party/zap

* Add instructions to install zap from releases

* Fix chip build version 09 is broken, need 10 after #24662

* Also add chip authors to manufacturers.xml copyright

* update to image 0.6.11 so that we have npm in the image as well (should make javascript github actions work again)

* Fix cmdargs arguments: run bootstrap not applicable anymore

* Add safe.directory for git otherwise git operations fail. checkout_submodules used to do this, but without them we need a separate set

* Provide options on how to execute zap using env variables

* Update scripts to add back run_zaptool and zap_bootstrap.sh

* Restyle and updated zaptool to be friendly with restyler

* Update documentation to explain available environment variables

* Restyle

* Update docs/guides/BUILDING.md

Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>

* Update docs/guides/BUILDING.md

Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>

* Add back run_bootstrap command line option

* Restyle

* Fix cmdline args

* Fix typo

* Make sure zap convert is also aware of environment variables

* Update convert.py workind directory. tested with local zap

* Add back run_bootstrap to regen_all and convert_all

* Restyle

* Spelling fix

* Update run_zaptool to support install for mac

* Update zap argument logic

* Restyle

Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>
diff --git a/.github/workflows/zap_regeneration.yaml b/.github/workflows/zap_regeneration.yaml
index db0b273..11f9492 100644
--- a/.github/workflows/zap_regeneration.yaml
+++ b/.github/workflows/zap_regeneration.yaml
@@ -28,7 +28,7 @@
 
         runs-on: ubuntu-20.04
         container:
-            image: connectedhomeip/chip-build-zap:0.6.06
+            image: connectedhomeip/chip-build:0.6.11
         defaults:
             run:
                 shell: sh
@@ -44,17 +44,11 @@
                       token: ${{ github.token }}
                   attempt_limit: 3
                   attempt_delay: 2000
-            - name: Setup ZAP
-              timeout-minutes: 5
-              run: |
-                  cd third_party/zap/repo/
-                  npm ci
-                  npm run version-stamp
-                  npm rebuild canvas --update-binary
-                  npm run build-spa
             - name: Generate all
               timeout-minutes: 5
               run: scripts/tools/zap_regen_all.py
+            - name: Ensure git works in current working directory
+              run: git config --global --add safe.directory `pwd`
             - name: Add uncommitted changes
               run: git add .
             - name: Fix upstream
diff --git a/.github/workflows/zap_templates.yaml b/.github/workflows/zap_templates.yaml
index 6bb3091..ba21cfc 100644
--- a/.github/workflows/zap_templates.yaml
+++ b/.github/workflows/zap_templates.yaml
@@ -29,7 +29,7 @@
 
         runs-on: ubuntu-20.04
         container:
-            image: connectedhomeip/chip-build-zap:0.6.06
+            image: connectedhomeip/chip-build:0.6.11
         defaults:
             run:
                 shell: sh
@@ -44,18 +44,10 @@
                       token: ${{ github.token }}
                   attempt_limit: 3
                   attempt_delay: 2000
-            - name: Checkout submodules
-              run: scripts/checkout_submodules.py --shallow --platform linux
-            - name: Setup ZAP
-              timeout-minutes: 10
-              run: |
-                  cd third_party/zap/repo/
-                  npm ci
-                  npm run version-stamp
-                  npm rebuild canvas --update-binary
-                  npm run build-spa
             - name: Generate all
               run: scripts/tools/zap_regen_all.py
+            - name: Ensure git works in current working directory
+              run: git config --global --add safe.directory `pwd`
             - name: Check for uncommited changes
               run: |
                   git add .
diff --git a/.gitmodules b/.gitmodules
index 0da2aaa..a68fbf7 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -54,10 +54,6 @@
 	url = https://github.com/Qorvo/QMatter
 	branch  = vlatest-libs
 	platforms = qpg
-[submodule "zap"]
-	path = third_party/zap/repo
-	url = https://github.com/project-chip/zap.git
-	branch  = master
 [submodule "freertos"]
 	path = third_party/freertos/repo
 	url = https://github.com/FreeRTOS/FreeRTOS-Kernel.git
diff --git a/docs/guides/BUILDING.md b/docs/guides/BUILDING.md
index 10fe929..fa5c881 100644
--- a/docs/guides/BUILDING.md
+++ b/docs/guides/BUILDING.md
@@ -128,6 +128,35 @@
 
 Finally, reboot your RPi.
 
+## Installing ZAP
+
+`zap-cli` is already installed in pre-built docker images for chip-build, such
+as
+[chip-build-vscode](https://hub.docker.com/r/connectedhomeip/chip-build-vscode).
+
+Zap generation and tooling relies on `zap-cli` being available on the current
+system. You can install it from the zap project
+[Releases](https://github.com/project-chip/zap/releases).
+
+You should install a compatible release version, generally checking against the
+release set in
+[integrations/docker/images/chip-build/Dockerfile](../../../integrations/docker/images/chip-build/Dockerfile).
+
+On linux, installation from `zap-linux.zip` is recommended as it pulls fewer
+dependencies than the `.deb` package.
+
+### Which ZAP to use
+
+ZAP scripting uses the following detection, in order:
+
+-   `$ZAP_DEVELOPMENT_PATH` to point to a zap checkout. Use this if you are
+    developing zap locally and would like to run zap with your changes
+
+-   `$ZAP_INSTALL_PATH` to point to where `zap-linux.zip`/`zap-mac.zip` was
+    unpacked. This allows you to not need to place zap/zap-cli in `$PATH`
+
+-   Otherwise scripts assume `zap-cli` or `zap` is available in `$PATH`
+
 ## Prepare for building
 
 Before running any other build command, the `scripts/activate.sh` environment
diff --git a/examples/chef/chef.py b/examples/chef/chef.py
index e3a8156..f6b3cc3 100755
--- a/examples/chef/chef.py
+++ b/examples/chef/chef.py
@@ -299,8 +299,6 @@
                       action="store_true", dest="do_interact")
     parser.add_option("-m", "--menuconfig", help="runs menuconfig on platforms that support it",
                       action="store_true", dest="do_menuconfig")
-    parser.add_option("", "--bootstrap_zap", help="installs zap dependencies",
-                      action="store_true", dest="do_bootstrap_zap")
     parser.add_option("-z", "--zap", help="runs zap to generate data model & interaction model artifacts",
                       action="store_true", dest="do_run_zap")
     parser.add_option("-g", "--zapgui", help="runs zap GUI display to allow editing of data model",
@@ -355,29 +353,6 @@
     splash()
 
     #
-    # ZAP bootstrapping
-    #
-
-    if options.do_bootstrap_zap:
-        if sys.platform == "linux" or sys.platform == "linux2":
-            flush_print("Installing ZAP OS package dependencies")
-            install_deps_cmd = """\
-            sudo apt-get install nodejs node-yargs npm
-            libpixman-1-dev libcairo2-dev libpango1.0-dev node-pre-gyp
-            libjpeg9-dev libgif-dev node-typescript"""
-            shell.run_cmd(unwrap_cmd(install_deps_cmd))
-        if sys.platform == "darwin":
-            flush_print(
-                "Installation of ZAP OS packages not supported on MacOS")
-        if sys.platform == "win32":
-            flush_print(
-                "Installation of ZAP OS packages not supported on Windows")
-
-        flush_print("Running NPM to install ZAP Node.JS dependencies")
-        shell.run_cmd(
-            f"cd {_REPO_BASE_PATH}/third_party/zap/repo/ && npm install")
-
-    #
     # CI
     #
 
diff --git a/integrations/docker/images/chip-cert-bins/Dockerfile b/integrations/docker/images/chip-cert-bins/Dockerfile
index 2aa6f10..14fce86 100644
--- a/integrations/docker/images/chip-cert-bins/Dockerfile
+++ b/integrations/docker/images/chip-cert-bins/Dockerfile
@@ -251,7 +251,6 @@
         *) ;; \
     esac
 
-RUN npm --prefix third_party/zap/repo/ ci
 RUN scripts/examples/gn_build_test_example.sh app1
 
 RUN source scripts/activate.sh && scripts/build_python.sh -m platform -d true -i no
diff --git a/scripts/helpers/pull_upstream_and_regenerate_zap.sh b/scripts/helpers/pull_upstream_and_regenerate_zap.sh
index 434f6c3..d3d1a18 100755
--- a/scripts/helpers/pull_upstream_and_regenerate_zap.sh
+++ b/scripts/helpers/pull_upstream_and_regenerate_zap.sh
@@ -2,18 +2,9 @@
 set -x
 
 git pull upstream master
-git submodule update --init --recursive third_party/zap/
 
 git status
 
-cd third_party/zap/repo/
-npm ci
-npm run version-stamp
-npm rebuild canvas --update-binary
-npm run build-spa
-
-cd ../../../
-
 scripts/tools/zap_regen_all.py
 
 git status
diff --git a/scripts/tools/zap/convert.py b/scripts/tools/zap/convert.py
index f3b8fc1..0edc091 100755
--- a/scripts/tools/zap/convert.py
+++ b/scripts/tools/zap/convert.py
@@ -92,21 +92,46 @@
     templates_file = getFilePath('src/app/zap-templates/app-templates.json')
     zcl_file = detectZclFile(zap_file)
 
-    generator_dir = getDirPath('third_party/zap/repo')
-    os.chdir(generator_dir)
-    subprocess.check_call(['node', './src-script/zap-convert.js',
-                          '-z', zcl_file, '-g', templates_file, '-o', zap_file, zap_file])
+    # Accepted environment variables, in order:
+    #
+    # ZAP_DEVELOPMENT_PATH - the path to a zap development environment. This is
+    #                        a zap checkout, used for local development
+    # ZAP_INSTALL_PATH     - the path where zap-cli exists. This is if zap-cli
+    #                        is NOT in the current path
 
+    if 'ZAP_DEVELOPMENT_PATH' in os.environ:
+        convert_cmd = ['node', 'src-script/zap-start.js', 'convert']
+        working_directory = os.environ['ZAP_DEVELOPMENT_PATH']
+    elif 'ZAP_INSTALL_PATH' in os.environ:
+        convert_cmd = [os.path.join(os.environ['ZAP_INSTALL_PATH'], 'zap-cli'), 'convert']
+        working_directory = None
+    else:
+        convert_cmd = ['zap-cli', 'convert']
+        working_directory = None
 
-def runBootstrap():
-    subprocess.check_call(getFilePath("scripts/tools/zap/zap_bootstrap.sh"), shell=True)
+    try:
+        subprocess.check_call(convert_cmd + ['-z', zcl_file, '-g', templates_file, '-o', zap_file, zap_file], cwd=working_directory)
+    except FileNotFoundError as e:
+        print(f'FAILED TO EXECUTE ZAP CONVERSION: {e.strerror} - "{e.filename}"')
+        print('*'*80)
+        print('* You may need to install zap. Please ensure one of these applies:')
+        print('* - `zap-cli` is in $PATH. Install from https://github.com/project-chip/zap/releases')
+        print('*   see docs/guides/BUILDING.md for details')
+        print('* - `zap-cli` is in $ZAP_INSTALL_PATH. Use this option if you')
+        print('*   installed zap but do not want to update $PATH')
+        print('* - Point $ZAP_DEVELOPMENT_PATH to your local copy of zap that you')
+        print('*   develop on (to use a developer build of zap)')
+        print('*'*80)
+        sys.exit(1)
 
 
 def main():
     checkPythonVersion()
     zap_file, run_bootstrap = runArgumentsParser()
+
     if run_bootstrap:
-        runBootstrap()
+        subprocess.check_call(getFilePath("scripts/tools/zap/zap_bootstrap.sh"), shell=True)
+
     os.chdir(CHIP_ROOT_DIR)
 
     runConversion(zap_file)
diff --git a/scripts/tools/zap/generate.py b/scripts/tools/zap/generate.py
index 0885e83..5c48a41 100755
--- a/scripts/tools/zap/generate.py
+++ b/scripts/tools/zap/generate.py
@@ -149,10 +149,38 @@
 
 
 def runGeneration(zap_file, zcl_file, templates_file, output_dir):
-    generator_dir = os.getenv('ZAP_PATH', getDirPath('third_party/zap/repo'))
-    os.chdir(generator_dir)
-    subprocess.check_call(['node', './src-script/zap-generate.js', '-z',
-                          zcl_file, '-g', templates_file, '-i', zap_file, '-o', output_dir])
+    # Accepted environment variables, in order:
+    #
+    # ZAP_DEVELOPMENT_PATH - the path to a zap development environment. This is
+    #                        a zap checkout, used for local development
+    # ZAP_INSTALL_PATH     - the path where zap-cli exists. This is if zap-cli
+    #                        is NOT in the current path
+
+    if 'ZAP_DEVELOPMENT_PATH' in os.environ:
+        generate_cmd = ['node', 'src-script/zap-start.js', 'generate']
+        working_directory = os.environ['ZAP_DEVELOPMENT_PATH']
+    elif 'ZAP_INSTALL_PATH' in os.environ:
+        generate_cmd = [os.path.join(os.environ['ZAP_INSTALL_PATH'], 'zap-cli'), 'generate']
+        working_directory = None
+    else:
+        generate_cmd = ['zap-cli', 'generate']
+        working_directory = None
+
+    try:
+        subprocess.check_call(generate_cmd + ['-z', zcl_file, '-g', templates_file,
+                              '-i', zap_file, '-o', output_dir], cwd=working_directory)
+    except FileNotFoundError as e:
+        print(f'FAILED TO EXECUTE ZAP GENERATION: {e.strerror} - "{e.filename}"')
+        print('*'*80)
+        print('* You may need to install zap. Please ensure one of these applies:')
+        print('* - `zap-cli` is in $PATH. Install from https://github.com/project-chip/zap/releases')
+        print('*   see docs/guides/BUILDING.md for details')
+        print('* - `zap-cli` is in $ZAP_INSTALL_PATH. Use this option if you')
+        print('*   installed zap but do not want to update $PATH')
+        print('* - Point $ZAP_DEVELOPMENT_PATH to your local copy of zap that you')
+        print('*   develop on (to use a developer build of zap)')
+        print('*'*80)
+        sys.exit(1)
 
     extractGeneratedIdl(output_dir, zap_file)
 
@@ -222,15 +250,13 @@
         print('google-java-format error:', err)
 
 
-def runBootstrap():
-    subprocess.check_call(getFilePath("scripts/tools/zap/zap_bootstrap.sh"), shell=True)
-
-
 def main():
     checkPythonVersion()
     cmdLineArgs = runArgumentsParser()
+
     if cmdLineArgs.runBootstrap:
-        runBootstrap()
+        subprocess.check_call(getFilePath("scripts/tools/zap/zap_bootstrap.sh"), shell=True)
+
     # The maximum memory usage is over 4GB (#15620)
     os.environ["NODE_OPTIONS"] = "--max-old-space-size=8192"
     runGeneration(cmdLineArgs.zapFile, cmdLineArgs.zclFile, cmdLineArgs.templateFile, cmdLineArgs.outputDir)
diff --git a/scripts/tools/zap/run_zaptool.sh b/scripts/tools/zap/run_zaptool.sh
index e2b7ee0..5e7a185 100755
--- a/scripts/tools/zap/run_zaptool.sh
+++ b/scripts/tools/zap/run_zaptool.sh
@@ -29,15 +29,29 @@
 
 SCRIPT_PATH="$(_get_fullpath "$0")"
 CHIP_ROOT="${SCRIPT_PATH%/scripts/tools/zap/run_zaptool.sh}"
-[[ -n "$1" ]] && ZAP_ARGS=(-i "$(_get_fullpath "$1")") || ZAP_ARGS=()
+[[ -n "$1" ]] && ZAP_ARGS="-i \"$(_get_fullpath "$1")\"" || ZAP_ARGS=""
 
-(
+if [ ! -z "$ZAP_DEVELOPMENT_PATH" ]; then
+    WORKING_DIR=$ZAP_DEVELOPMENT_PATH
+    ZAP_CMD="node src-script/zap-start.js"
 
     "$CHIP_ROOT"/scripts/tools/zap/zap_bootstrap.sh
+elif [ ! -z "$ZAP_INSTALL_PATH" ]; then
+    if [[ "$OSTYPE" == "darwin"* ]]; then
+        ZAP_CMD="$ZAP_INSTALL_PATH/zap.app/Contents/MacOS/zap"
+    else
+        ZAP_CMD="$ZAP_INSTALL_PATH/zap"
+    fi
+    WORKING_DIR="$CHIP_ROOT"
+else
+    ZAP_CMD="zap"
+    WORKING_DIR="$CHIP_ROOT"
+fi
 
-    cd "$CHIP_ROOT/third_party/zap/repo"
+(
+    cd "$WORKING_DIR"
 
-    echo "ARGS: ${ZAP_ARGS[@]}"
+    echo "ARGS: $ZAP_ARGS"
 
     if [[ "${ZAP_ARGS[@]}" == *"/all-clusters-app.zap"* ]]; then
         ZCL_FILE="$CHIP_ROOT/src/app/zap-templates/zcl/zcl-with-test-extensions.json"
@@ -45,8 +59,11 @@
         ZCL_FILE="$CHIP_ROOT/src/app/zap-templates/zcl/zcl.json"
     fi
 
-    node src-script/zap-start.js --logToStdout \
-        --gen "$CHIP_ROOT/src/app/zap-templates/app-templates.json" \
-        --zcl "$ZCL_FILE" \
-        "${ZAP_ARGS[@]}"
+    bash -c " \
+        $ZAP_CMD \
+        --logToStdout \
+        --gen \"$CHIP_ROOT/src/app/zap-templates/app-templates.json\" \
+        --zcl \"$ZCL_FILE\" \
+        $ZAP_ARGS \
+    "
 )
diff --git a/scripts/tools/zap/zap_bootstrap.sh b/scripts/tools/zap/zap_bootstrap.sh
index b4e459c..5673478 100755
--- a/scripts/tools/zap/zap_bootstrap.sh
+++ b/scripts/tools/zap/zap_bootstrap.sh
@@ -32,14 +32,13 @@
 
 set -e
 
-SCRIPT_PATH="$(_get_fullpath "$0")"
-CHIP_ROOT="${SCRIPT_PATH%/scripts/tools/zap/zap_bootstrap.sh}"
+if [ -z "$ZAP_DEVELOPMENT_PATH" ]; then
+    echo 'Please set $ZAP_DEVELOPMENT_PATH to your zap checkout'
+    exit 1
+fi
 
 (
-    cd "$CHIP_ROOT" &&
-        git submodule update --init third_party/zap/repo
-
-    cd "third_party/zap/repo"
+    cd "$ZAP_DEVELOPMENT_PATH"
 
     if [ $# -eq 0 ]; then
         echo "Running ZAP bootstrap"
diff --git a/scripts/tools/zap_convert_all.py b/scripts/tools/zap_convert_all.py
index 7ffb445..15a68cf 100755
--- a/scripts/tools/zap_convert_all.py
+++ b/scripts/tools/zap_convert_all.py
@@ -62,15 +62,13 @@
     return parser.parse_args()
 
 
-def runBootstrap():
-    subprocess.check_call(os.path.join(CHIP_ROOT_DIR, "scripts/tools/zap/zap_bootstrap.sh"), shell=True)
-
-
 def main():
     args = runArgumentsParser()
     checkPythonVersion()
+
     if args.run_bootstrap:
-        runBootstrap()
+        subprocess.check_call(os.path.join(CHIP_ROOT_DIR, "scripts/tools/zap/zap_bootstrap.sh"), shell=True)
+
     os.chdir(CHIP_ROOT_DIR)
 
     targets = getTargets()
diff --git a/scripts/tools/zap_regen_all.py b/scripts/tools/zap_regen_all.py
index 61c8f68..18de729 100755
--- a/scripts/tools/zap_regen_all.py
+++ b/scripts/tools/zap_regen_all.py
@@ -253,10 +253,6 @@
     return targets
 
 
-def runBootstrap():
-    subprocess.check_call(os.path.join(CHIP_ROOT_DIR, "scripts/tools/zap/zap_bootstrap.sh"), shell=True)
-
-
 def main():
     logging.basicConfig(
         level=logging.INFO,
@@ -268,9 +264,11 @@
 
     targets = getTargets(args.type, args.tests)
 
-    if (not args.dry_run):
-        if (args.run_bootstrap):
-            runBootstrap()
+    if not args.dry_run:
+
+        if args.run_bootstrap:
+            subprocess.check_call(os.path.join(CHIP_ROOT_DIR, "scripts/tools/zap/zap_bootstrap.sh"), shell=True)
+
         for target in targets:
             target.generate()
 
diff --git a/src/app/zap-templates/zcl/data-model/manufacturers.xml b/src/app/zap-templates/zcl/data-model/manufacturers.xml
new file mode 100644
index 0000000..d5ceb4a
--- /dev/null
+++ b/src/app/zap-templates/zcl/data-model/manufacturers.xml
@@ -0,0 +1,741 @@
+<?xml version="1.0"?>
+<!--
+Copyright (c) 2022 Project CHIP Authors
+Copyright (c) 2008,2022 Silicon Labs.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Note: 
+  This file was generated automatically from the official
+  CSA alliance manufacturer ID database on: Tue Aug 02 2022 08:01:02 GMT-0400 (Eastern Daylight Time)
+  Please do not edit manually!
+-->
+<map>
+  <mapping code="0x0000" translation="[Matter Standard]"/>
+  <mapping code="0x0001" translation="Panasonic"/>
+  <mapping code="0x0002" translation="Sony"/>
+  <mapping code="0x0003" translation="Samsung"/>
+  <mapping code="0x0004" translation="Philips (RF4CE)"/>
+  <mapping code="0x0005" translation="Freescale (RF4CE)"/>
+  <mapping code="0x0006" translation="Oki Semiconductors (RF4CE)"/>
+  <mapping code="0x0007" translation="Texas Instruments"/>
+  <mapping code="0x1000" translation="Cirronet"/>
+  <mapping code="0x1001" translation="Chipcon"/>
+  <mapping code="0x1002" translation="Ember"/>
+  <mapping code="0x1003" translation="NTS"/>
+  <mapping code="0x1004" translation="Freescale"/>
+  <mapping code="0x1005" translation="IP Com"/>
+  <mapping code="0x1006" translation="San Juan Software"/>
+  <mapping code="0x1007" translation="TUV"/>
+  <mapping code="0x1008" translation="Integration"/>
+  <mapping code="0x1009" translation="BM SpA"/>
+  <mapping code="0x100A" translation="AwarePoint"/>
+  <mapping code="0x100B" translation="Signify Netherlands B.V."/>
+  <mapping code="0x100C" translation="Luxoft"/>
+  <mapping code="0x100D" translation="Korwin"/>
+  <mapping code="0x100E" translation="One RF Technology"/>
+  <mapping code="0x100F" translation="Software Technologies Group"/>
+  <mapping code="0x1010" translation="Telegesis"/>
+  <mapping code="0x1011" translation="Visonic"/>
+  <mapping code="0x1012" translation="Insta"/>
+  <mapping code="0x1013" translation="Atalum"/>
+  <mapping code="0x1014" translation="Atmel"/>
+  <mapping code="0x1015" translation="Develco"/>
+  <mapping code="0x1016" translation="Honeywell"/>
+  <mapping code="0x1017" translation="RadioPulse"/>
+  <mapping code="0x1018" translation="Renesas"/>
+  <mapping code="0x1019" translation="Xanadu Wireless"/>
+  <mapping code="0x101A" translation="NEC Engineering"/>
+  <mapping code="0x101B" translation="Yamatake Corporation"/>
+  <mapping code="0x101C" translation="Tendril Networks"/>
+  <mapping code="0x101D" translation="Assa Abloy"/>
+  <mapping code="0x101E" translation="MaxStream"/>
+  <mapping code="0x101F" translation="Neurocom"/>
+  <mapping code="0x1020" translation="Institute for Information Industry"/>
+  <mapping code="0x1021" translation="Legrand Group"/>
+  <mapping code="0x1022" translation="iControl"/>
+  <mapping code="0x1023" translation="Raymarine"/>
+  <mapping code="0x1024" translation="LS Research"/>
+  <mapping code="0x1025" translation="Onity Inc."/>
+  <mapping code="0x1026" translation="Mono Products"/>
+  <mapping code="0x1027" translation="RF Technologies"/>
+  <mapping code="0x1028" translation="Itron"/>
+  <mapping code="0x1029" translation="Tritech"/>
+  <mapping code="0x102A" translation="Embedit A/S"/>
+  <mapping code="0x102B" translation="S3C"/>
+  <mapping code="0x102C" translation="Siemens"/>
+  <mapping code="0x102D" translation="Mindtech"/>
+  <mapping code="0x102E" translation="LG Electronics"/>
+  <mapping code="0x102F" translation="Mitsubishi Electric Corp."/>
+  <mapping code="0x1030" translation="Johnson Controls"/>
+  <mapping code="0x1031" translation="Secure Meters (UK) Ltd"/>
+  <mapping code="0x1032" translation="Knick"/>
+  <mapping code="0x1033" translation="Viconics"/>
+  <mapping code="0x1034" translation="Flexipanel"/>
+  <mapping code="0x1035" translation="Piasim Corporation Pte., Ltd."/>
+  <mapping code="0x1036" translation="Trane"/>
+  <mapping code="0x1037" translation="NXP Semiconductors"/>
+  <mapping code="0x1038" translation="Living Independently Group"/>
+  <mapping code="0x1039" translation="AlertMe.com"/>
+  <mapping code="0x103A" translation="Daintree"/>
+  <mapping code="0x103B" translation="Aiji System"/>
+  <mapping code="0x103C" translation="Telecom Italia"/>
+  <mapping code="0x103D" translation="Mikrokrets AS"/>
+  <mapping code="0x103E" translation="Oki Semiconductor"/>
+  <mapping code="0x103F" translation="Newport Electonics"/>
+  <mapping code="0x1040" translation="Control 4"/>
+  <mapping code="0x1041" translation="STMicroelectronics"/>
+  <mapping code="0x1042" translation="Ad-Sol Nissin Corp"/>
+  <mapping code="0x1043" translation="DCSI"/>
+  <mapping code="0x1044" translation="France Telecom"/>
+  <mapping code="0x1045" translation="muNet"/>
+  <mapping code="0x1046" translation="Autani Corporation"/>
+  <mapping code="0x1047" translation="Colorado vNet"/>
+  <mapping code="0x1048" translation="Aerocomm, Inc."/>
+  <mapping code="0x1049" translation="Silicon Laboratories"/>
+  <mapping code="0x104A" translation="Inncom International Inc."/>
+  <mapping code="0x104B" translation="Cooper Power Systems"/>
+  <mapping code="0x104C" translation="Synapse"/>
+  <mapping code="0x104D" translation="Fisher Pierce/Sunrise"/>
+  <mapping code="0x104E" translation="CentraLite Systems, Inc."/>
+  <mapping code="0x104F" translation="Crane Wireless Monitoring Solutions"/>
+  <mapping code="0x1050" translation="Mobilarm Limited"/>
+  <mapping code="0x1051" translation="iMonitor Research Ltd."/>
+  <mapping code="0x1052" translation="Bartech"/>
+  <mapping code="0x1053" translation="MeshNetics"/>
+  <mapping code="0x1054" translation="LS Industrial Systems Co. Ltd."/>
+  <mapping code="0x1055" translation="Cason Engineering plc"/>
+  <mapping code="0x1056" translation="Wireless Glue Networks Inc."/>
+  <mapping code="0x1057" translation="Elster"/>
+  <mapping code="0x1058" translation="SMS Tecnologia Eletr&#xF4;nica"/>
+  <mapping code="0x1059" translation="Onset Computer Corporation"/>
+  <mapping code="0x105A" translation="Riga Development"/>
+  <mapping code="0x105B" translation="Energate"/>
+  <mapping code="0x105C" translation="ConMed Linvatec"/>
+  <mapping code="0x105D" translation="PowerMand"/>
+  <mapping code="0x105E" translation="Schneider Electric"/>
+  <mapping code="0x105F" translation="Eaton Corporation"/>
+  <mapping code="0x1060" translation="Telular Corporation"/>
+  <mapping code="0x1061" translation="Delphi Medical Systems"/>
+  <mapping code="0x1062" translation="EpiSensor Limited"/>
+  <mapping code="0x1063" translation="Landis+Gyr"/>
+  <mapping code="0x1064" translation="Kaba Group"/>
+  <mapping code="0x1065" translation="Shure Incorporated"/>
+  <mapping code="0x1066" translation="Comverge, Inc."/>
+  <mapping code="0x1067" translation="DBS Lodging Technologies, LLC."/>
+  <mapping code="0x1068" translation="Energy Aware Technology Inc."/>
+  <mapping code="0x1069" translation="Hidalgo Limited"/>
+  <mapping code="0x106A" translation="Air2App"/>
+  <mapping code="0x106B" translation="AMX"/>
+  <mapping code="0x106C" translation="EDMI Pty Ltd"/>
+  <mapping code="0x106D" translation="Cyan Ltd"/>
+  <mapping code="0x106E" translation="System SPA"/>
+  <mapping code="0x106F" translation="Telit"/>
+  <mapping code="0x1070" translation="Kaga Electronics"/>
+  <mapping code="0x1071" translation="Astrel Group SRL"/>
+  <mapping code="0x1072" translation="Certicom"/>
+  <mapping code="0x1073" translation="Gridpoint"/>
+  <mapping code="0x1074" translation="Profile Systems LLC"/>
+  <mapping code="0x1075" translation="Compacta International Ltd"/>
+  <mapping code="0x1076" translation="Freestyle Technology Pty Ltd."/>
+  <mapping code="0x1077" translation="Alektrona"/>
+  <mapping code="0x1078" translation="Computime"/>
+  <mapping code="0x1079" translation="Remote Technologies, Inc."/>
+  <mapping code="0x107A" translation="Wavecom S.A."/>
+  <mapping code="0x107B" translation="Energy Optimizers Ltd."/>
+  <mapping code="0x107C" translation="GE"/>
+  <mapping code="0x107D" translation="Jetlun"/>
+  <mapping code="0x107E" translation="Cipher Systems"/>
+  <mapping code="0x107F" translation="Corporate Systems Engineering"/>
+  <mapping code="0x1080" translation="ecobee"/>
+  <mapping code="0x1081" translation="SMK"/>
+  <mapping code="0x1082" translation="Meshworks Wireless Oy"/>
+  <mapping code="0x1083" translation="Ellips B.V."/>
+  <mapping code="0x1084" translation="Secure electrans"/>
+  <mapping code="0x1085" translation="CEDO"/>
+  <mapping code="0x1086" translation="Toshiba"/>
+  <mapping code="0x1087" translation="Digi International"/>
+  <mapping code="0x1088" translation="Ubilogix"/>
+  <mapping code="0x1089" translation="Echelon"/>
+  <mapping code="0x1090" translation="Green Energy Options"/>
+  <mapping code="0x1091" translation="Silver Spring Networks"/>
+  <mapping code="0x1092" translation="Black &amp; Decker"/>
+  <mapping code="0x1093" translation="Aztech Associates Inc."/>
+  <mapping code="0x1094" translation="A&amp;D Co., Ltd."/>
+  <mapping code="0x1095" translation="Rainforest Automation"/>
+  <mapping code="0x1096" translation="Carrier Electronics"/>
+  <mapping code="0x1097" translation="SyChip/Murata"/>
+  <mapping code="0x1098" translation="OpenPeak"/>
+  <mapping code="0x1099" translation="PassiveSystems"/>
+  <mapping code="0x109A" translation="MMB Research"/>
+  <mapping code="0x109B" translation="Leviton Manufacturing Company"/>
+  <mapping code="0x109C" translation="Korea Electric Power Data Network Co., Ltd."/>
+  <mapping code="0x109D" translation="Comcast"/>
+  <mapping code="0x109E" translation="NEC Electronics"/>
+  <mapping code="0x109F" translation="Netvox"/>
+  <mapping code="0x10A0" translation="U-Control"/>
+  <mapping code="0x10A1" translation="Embedia Technologies Corp"/>
+  <mapping code="0x10A2" translation="Sensus"/>
+  <mapping code="0x10A3" translation="Sunrise Technologies"/>
+  <mapping code="0x10A4" translation="Memtech Corp"/>
+  <mapping code="0x10A5" translation="Freebox"/>
+  <mapping code="0x10A6" translation="M2 Labs Ltd."/>
+  <mapping code="0x10A7" translation="British Gas"/>
+  <mapping code="0x10A8" translation="Sentec Ltd."/>
+  <mapping code="0x10A9" translation="Navetas"/>
+  <mapping code="0x10AA" translation="Lightspeed Technologies"/>
+  <mapping code="0x10AB" translation="Oki Electric Industry Co., Ltd."/>
+  <mapping code="0x10AC" translation="S I - Sistemas Inteligentes Eletr&#xF4;nicos Ltda"/>
+  <mapping code="0x10AD" translation="Dometic"/>
+  <mapping code="0x10AE" translation="Alps"/>
+  <mapping code="0x10AF" translation="EnergyHub"/>
+  <mapping code="0x10B0" translation="Kamstrup"/>
+  <mapping code="0x10B1" translation="EchoStar"/>
+  <mapping code="0x10B2" translation="EnerNOC"/>
+  <mapping code="0x10B3" translation="Eltav"/>
+  <mapping code="0x10B4" translation="Belkin"/>
+  <mapping code="0x10B5" translation="XStreamHD - Wireless Ventures"/>
+  <mapping code="0x10B6" translation="Saturn South Pty Ltd"/>
+  <mapping code="0x10B7" translation="GreenTrapOnline A/S"/>
+  <mapping code="0x10B8" translation="SmartSynch, Inc."/>
+  <mapping code="0x10B9" translation="Nyce Control, Inc."/>
+  <mapping code="0x10BA" translation="ICM Controls Corp"/>
+  <mapping code="0x10BB" translation="Millennium Electronics, PTY Ltd."/>
+  <mapping code="0x10BC" translation="Motorola, Inc"/>
+  <mapping code="0x10BD" translation="Emerson White-Rodgers"/>
+  <mapping code="0x10BE" translation="Radio Thermostat Company of America"/>
+  <mapping code="0x10BF" translation="OMRON Corporation"/>
+  <mapping code="0x10C0" translation="GiiNii Global Limited"/>
+  <mapping code="0x10C1" translation="Fujitsu General Limited"/>
+  <mapping code="0x10C2" translation="Peel Technologies, Inc."/>
+  <mapping code="0x10C3" translation="Accent S.p.A."/>
+  <mapping code="0x10C4" translation="ByteSnap Design Ltd."/>
+  <mapping code="0x10C5" translation="NEC TOKIN Corporation"/>
+  <mapping code="0x10C6" translation="G4S Justice Services"/>
+  <mapping code="0x10C7" translation="Trilliant Networks, Inc."/>
+  <mapping code="0x10C8" translation="Electrolux Italia S.p.A"/>
+  <mapping code="0x10C9" translation="Onzo Ltd"/>
+  <mapping code="0x10CA" translation="EnTek Systems"/>
+  <mapping code="0x10CB" translation="Philips"/>
+  <mapping code="0x10CC" translation="Mainstream Engineering"/>
+  <mapping code="0x10CD" translation="Indesit Company"/>
+  <mapping code="0x10CE" translation="THINKECO, INC."/>
+  <mapping code="0x10CF" translation="2D2C, Inc."/>
+  <mapping code="0x10D0" translation="Qorvo"/>
+  <mapping code="0x10D1" translation="InterCEL"/>
+  <mapping code="0x10D2" translation="LG Electronics"/>
+  <mapping code="0x10D3" translation="Mitsumi Electric Co.,Ltd."/>
+  <mapping code="0x10D4" translation="Mitsumi Electric Co.,Ltd."/>
+  <mapping code="0x10D5" translation="Zentrum Mikroelektronik Dresden AG (ZMDI)"/>
+  <mapping code="0x10D6" translation="Nest Labs, Inc."/>
+  <mapping code="0x10D7" translation="Exegin Technologies, Ltd."/>
+  <mapping code="0x10D8" translation="Honeywell"/>
+  <mapping code="0x10D9" translation="Takahata Precision Co. Ltd."/>
+  <mapping code="0x10DA" translation="SUMITOMO ELECTRIC NETWORKS, INC."/>
+  <mapping code="0x10DB" translation="GE Energy"/>
+  <mapping code="0x10DC" translation="GE Appliances"/>
+  <mapping code="0x10DD" translation="Radiocrafts AS"/>
+  <mapping code="0x10DE" translation="Ceiva"/>
+  <mapping code="0x10DF" translation="TEC&amp;CO Co., Ltd"/>
+  <mapping code="0x10E0" translation="Chameleon Technology (UK) Ltd"/>
+  <mapping code="0x10E1" translation="Samsung"/>
+  <mapping code="0x10E2" translation="ruwido austria gmbh"/>
+  <mapping code="0x10E3" translation="Huawei Technologies Co., Ltd."/>
+  <mapping code="0x10E4" translation="Huawei Technologies Co., Ltd."/>
+  <mapping code="0x10E5" translation="Greenwave Reality"/>
+  <mapping code="0x10E6" translation="BGlobal Metering Ltd"/>
+  <mapping code="0x10E7" translation="Mindteck"/>
+  <mapping code="0x10E8" translation="Ingersoll-Rand"/>
+  <mapping code="0x10E9" translation="Dius Computing Pty Ltd"/>
+  <mapping code="0x10EA" translation="Embedded Automation, Inc."/>
+  <mapping code="0x10EB" translation="ABB"/>
+  <mapping code="0x10EC" translation="Sony"/>
+  <mapping code="0x10ED" translation="Genus Power Infrastructures Limited"/>
+  <mapping code="0x10EE" translation="Universal Electronics, Inc."/>
+  <mapping code="0x10EF" translation="Universal Electronics, Inc."/>
+  <mapping code="0x10F0" translation="Metrum Technologies, LLC"/>
+  <mapping code="0x10F1" translation="Cisco"/>
+  <mapping code="0x10F2" translation="Ubisys technologies GmbH"/>
+  <mapping code="0x10F3" translation="Consert"/>
+  <mapping code="0x10F4" translation="Crestron Electronics"/>
+  <mapping code="0x10F5" translation="Enphase Energy"/>
+  <mapping code="0x10F6" translation="Invensys Controls"/>
+  <mapping code="0x10F7" translation="Mueller Systems, LLC"/>
+  <mapping code="0x10F8" translation="AAC Technologies Holding"/>
+  <mapping code="0x10F9" translation="U-NEXT Co., Ltd"/>
+  <mapping code="0x10FA" translation="Steelcase Inc."/>
+  <mapping code="0x10FB" translation="Telematics Wireless"/>
+  <mapping code="0x10FC" translation="Samil Power Co., Ltd"/>
+  <mapping code="0x10FD" translation="Pace Plc"/>
+  <mapping code="0x10FE" translation="Osborne Coinage Co."/>
+  <mapping code="0x10FF" translation="Powerwatch"/>
+  <mapping code="0x1100" translation="CANDELED GmbH"/>
+  <mapping code="0x1101" translation="FlexGrid S.R.L"/>
+  <mapping code="0x1102" translation="Humax"/>
+  <mapping code="0x1103" translation="Universal Devices"/>
+  <mapping code="0x1104" translation="Advanced Energy"/>
+  <mapping code="0x1105" translation="BEGA Gantenbrink-Leuchten"/>
+  <mapping code="0x1106" translation="Brunel University"/>
+  <mapping code="0x1107" translation="Panasonic R&amp;D Center Singapore"/>
+  <mapping code="0x1108" translation="eSystems Research"/>
+  <mapping code="0x1109" translation="Panamax"/>
+  <mapping code="0x110A" translation="SmartThings, Inc."/>
+  <mapping code="0x110B" translation="EM-Lite Ltd."/>
+  <mapping code="0x110C" translation="Osram Sylvania"/>
+  <mapping code="0x110D" translation="2 Save Energy Ltd."/>
+  <mapping code="0x110E" translation="Planet Innovation Products Pty Ltd"/>
+  <mapping code="0x110F" translation="Ambient Devices, Inc."/>
+  <mapping code="0x1110" translation="Profalux"/>
+  <mapping code="0x1111" translation="Billion Electric Company (BEC)"/>
+  <mapping code="0x1112" translation="Embertec Pty Ltd"/>
+  <mapping code="0x1113" translation="IT Watchdogs"/>
+  <mapping code="0x1114" translation="Reloc"/>
+  <mapping code="0x1115" translation="Intel Corporation"/>
+  <mapping code="0x1116" translation="Trend Electronics Limited"/>
+  <mapping code="0x1117" translation="Moxa"/>
+  <mapping code="0x1118" translation="QEES"/>
+  <mapping code="0x1119" translation="SAYME Wireless Sensor Networks"/>
+  <mapping code="0x111A" translation="Pentair Aquatic Systems"/>
+  <mapping code="0x111B" translation="Orbit Irrigation"/>
+  <mapping code="0x111C" translation="California Eastern Laboratories"/>
+  <mapping code="0x111D" translation="Comcast"/>
+  <mapping code="0x111E" translation="IDT Technology Limited"/>
+  <mapping code="0x111F" translation="Pixela Corporation"/>
+  <mapping code="0x1120" translation="TiVo, Inc."/>
+  <mapping code="0x1121" translation="Fidure Corp."/>
+  <mapping code="0x1122" translation="Marvell Semiconductor, Inc."/>
+  <mapping code="0x1123" translation="Wasion Group Limited"/>
+  <mapping code="0x1124" translation="Jasco Products Company"/>
+  <mapping code="0x1125" translation="Shenzhen Kaifa Technology (Chengdu) Co., Ltd."/>
+  <mapping code="0x1126" translation="Netcomm Wireless Limited"/>
+  <mapping code="0x1127" translation="Define Instruments Limited"/>
+  <mapping code="0x1128" translation="In Home Displays Ltd."/>
+  <mapping code="0x1129" translation="Miele &amp; Cie. KG"/>
+  <mapping code="0x112A" translation="Televes S.A."/>
+  <mapping code="0x112B" translation="Labelec"/>
+  <mapping code="0x112C" translation="China Electronics Standardization Institute"/>
+  <mapping code="0x112D" translation="Vectorform, LLC"/>
+  <mapping code="0x112E" translation="Busch-Jaeger Elektro"/>
+  <mapping code="0x112F" translation="Redpine Signals, Inc."/>
+  <mapping code="0x1130" translation="Bridges Electronic Technology Pty Ltd."/>
+  <mapping code="0x1131" translation="Sercomm"/>
+  <mapping code="0x1132" translation="WSH GmbH wirsindheller"/>
+  <mapping code="0x1133" translation="Bosch Security Systems, Inc."/>
+  <mapping code="0x1134" translation="eZEX Corporation"/>
+  <mapping code="0x1135" translation="Dresden Elektronik Ingenieurtechnik GmbH"/>
+  <mapping code="0x1136" translation="MEAZON S.A."/>
+  <mapping code="0x1137" translation="Crow Electronic Engineering Ltd."/>
+  <mapping code="0x1138" translation="Harvard Engineering Plc"/>
+  <mapping code="0x1139" translation="Andson(Beijing) Technology CO.,Ltd"/>
+  <mapping code="0x113A" translation="Adhoco AG"/>
+  <mapping code="0x113B" translation="Waxman Consumer Products Group, Inc."/>
+  <mapping code="0x113C" translation="Owon Technology, Inc."/>
+  <mapping code="0x113D" translation="Hitron Technologies, Inc."/>
+  <mapping code="0x113E" translation="Scemtec Hard - und Software f&#xFC;r Mess - und Steuerungstechnik GmbH"/>
+  <mapping code="0x113F" translation="Webee LLC"/>
+  <mapping code="0x1140" translation="Grid2Home Inc"/>
+  <mapping code="0x1141" translation="Telink Micro"/>
+  <mapping code="0x1142" translation="Jasmine Systems, Inc."/>
+  <mapping code="0x1143" translation="Bidgely"/>
+  <mapping code="0x1144" translation="Lutron"/>
+  <mapping code="0x1145" translation="IJENKO"/>
+  <mapping code="0x1146" translation="Starfield Electronic Ltd."/>
+  <mapping code="0x1147" translation="TCP, Inc."/>
+  <mapping code="0x1148" translation="Rogers Communications Partnership"/>
+  <mapping code="0x1149" translation="Cree, Inc."/>
+  <mapping code="0x114A" translation="Robert Bosch LLC"/>
+  <mapping code="0x114B" translation="Ibis Networks, Inc."/>
+  <mapping code="0x114C" translation="Quirky, Inc."/>
+  <mapping code="0x114D" translation="Efergy Technologies Limited"/>
+  <mapping code="0x114E" translation="SmartLabs, Inc."/>
+  <mapping code="0x114F" translation="Everspring Industry Co., Ltd."/>
+  <mapping code="0x1150" translation="Swann Communications Ptl Ltd."/>
+  <mapping code="0x1151" translation="Soneter"/>
+  <mapping code="0x1152" translation="Samsung SDS"/>
+  <mapping code="0x1153" translation="Uniband Electronic Corporation"/>
+  <mapping code="0x1154" translation="Accton Technology Corporation"/>
+  <mapping code="0x1155" translation="Bosch Thermotechnik GmbH"/>
+  <mapping code="0x1156" translation="Wincor Nixdorf Inc."/>
+  <mapping code="0x1157" translation="Ohsung Electronics"/>
+  <mapping code="0x1158" translation="Zen Within, Inc."/>
+  <mapping code="0x1159" translation="Tech4home, Lda."/>
+  <mapping code="0x115A" translation="Nanoleaf"/>
+  <mapping code="0x115B" translation="Keen Home, Inc."/>
+  <mapping code="0x115C" translation="Poly-Control APS"/>
+  <mapping code="0x115D" translation="Eastfield Lighting Co., Ltd Shenzhen"/>
+  <mapping code="0x115E" translation="IP Datatel, Inc."/>
+  <mapping code="0x115F" translation="Lumi United Techology, Ltd Shenzhen"/>
+  <mapping code="0x1160" translation="Sengled Co., Ltd."/>
+  <mapping code="0x1161" translation="Remote Solution Co., Ltd."/>
+  <mapping code="0x1162" translation="ABB Genway Xiamen Electrical Equipment Co., Ltd."/>
+  <mapping code="0x1163" translation="Zhejiang Rexense Tech"/>
+  <mapping code="0x1164" translation="ForEE Technology"/>
+  <mapping code="0x1165" translation="Open Access Technology Int&#x2019;l."/>
+  <mapping code="0x1166" translation="INNR Lighting BV"/>
+  <mapping code="0x1167" translation="Techworld Industries"/>
+  <mapping code="0x1168" translation="Leedarson Lighting Co., Ltd."/>
+  <mapping code="0x1169" translation="Arzel Zoning"/>
+  <mapping code="0x116A" translation="Holley Technology"/>
+  <mapping code="0x116B" translation="Beldon Technologies"/>
+  <mapping code="0x116C" translation="Flextronics"/>
+  <mapping code="0x116D" translation="Shenzhen Meian"/>
+  <mapping code="0x116E" translation="Lowe&#x2019;s"/>
+  <mapping code="0x116F" translation="Sigma Connectivity"/>
+  <mapping code="0x1171" translation="Wulian"/>
+  <mapping code="0x1172" translation="Plugwise B.V."/>
+  <mapping code="0x1173" translation="Titan Products"/>
+  <mapping code="0x1174" translation="Ecospectral"/>
+  <mapping code="0x1175" translation="D-Link"/>
+  <mapping code="0x1176" translation="Technicolor Home USA"/>
+  <mapping code="0x1177" translation="Opple Lighting"/>
+  <mapping code="0x1178" translation="Wistron NeWeb Corp."/>
+  <mapping code="0x1179" translation="QMotion Shades"/>
+  <mapping code="0x117A" translation="Insta GmbH"/>
+  <mapping code="0x117B" translation="Shanghai Vancount"/>
+  <mapping code="0x117C" translation="Ikea of Sweden"/>
+  <mapping code="0x117D" translation="RT-RK"/>
+  <mapping code="0x117E" translation="Shenzhen Feibit"/>
+  <mapping code="0x117F" translation="EuControls"/>
+  <mapping code="0x1180" translation="Telkonet"/>
+  <mapping code="0x1181" translation="Thermal Solution Resources"/>
+  <mapping code="0x1182" translation="PomCube"/>
+  <mapping code="0x1183" translation="Ei Electronics"/>
+  <mapping code="0x1184" translation="Optoga"/>
+  <mapping code="0x1185" translation="Stelpro"/>
+  <mapping code="0x1186" translation="Lynxus Technologies Corp."/>
+  <mapping code="0x1187" translation="Semiconductor Components"/>
+  <mapping code="0x1188" translation="TP-Link"/>
+  <mapping code="0x1189" translation="Ledvance GmbH"/>
+  <mapping code="0x118A" translation="Nortek"/>
+  <mapping code="0x118B" translation="iRevo/Assa Abbloy Korea"/>
+  <mapping code="0x118C" translation="Midea"/>
+  <mapping code="0x118D" translation="ZF Friedrichshafen"/>
+  <mapping code="0x118E" translation="Checkit"/>
+  <mapping code="0x118F" translation="Aclara"/>
+  <mapping code="0x1190" translation="Nokia"/>
+  <mapping code="0x1191" translation="Goldcard High-tech Co., Ltd."/>
+  <mapping code="0x1192" translation="George Wilson Industries Ltd."/>
+  <mapping code="0x1193" translation="EASY SAVER CO.,INC"/>
+  <mapping code="0x1194" translation="ZTE Corporation"/>
+  <mapping code="0x1195" translation="ARRIS"/>
+  <mapping code="0x1196" translation="Reliance BIG TV"/>
+  <mapping code="0x1197" translation="Insight Energy Ventures/Powerley"/>
+  <mapping code="0x1198" translation="Thomas Research Products (Hubbell Lighting Inc.)"/>
+  <mapping code="0x1199" translation="Li Seng Technology"/>
+  <mapping code="0x119A" translation="System Level Solutions Inc."/>
+  <mapping code="0x119B" translation="Matrix Labs"/>
+  <mapping code="0x119C" translation="Sinope Technologies"/>
+  <mapping code="0x119D" translation="Jiuzhou Greeble"/>
+  <mapping code="0x119E" translation="Guangzhou Lanvee Tech. Co. Ltd."/>
+  <mapping code="0x119F" translation="Venstar"/>
+  <mapping code="0x1200" translation="SLV"/>
+  <mapping code="0x1201" translation="Halo Smart Labs"/>
+  <mapping code="0x1202" translation="Scout Security Inc."/>
+  <mapping code="0x1203" translation="Alibaba China Inc."/>
+  <mapping code="0x1204" translation="Resolution Products, Inc."/>
+  <mapping code="0x1205" translation="Smartlok Inc."/>
+  <mapping code="0x1206" translation="Lux Products Corp."/>
+  <mapping code="0x1207" translation="Vimar SpA"/>
+  <mapping code="0x1208" translation="Universal Lighting Technologies"/>
+  <mapping code="0x1209" translation="Robert Bosch, GmbH"/>
+  <mapping code="0x120A" translation="Accenture"/>
+  <mapping code="0x120B" translation="Heiman Technology Co., Ltd."/>
+  <mapping code="0x120C" translation="Shenzhen HOMA Technology Co., Ltd."/>
+  <mapping code="0x120D" translation="Vision-Electronics Technology"/>
+  <mapping code="0x120E" translation="Lenovo"/>
+  <mapping code="0x120F" translation="Presciense R&amp;D"/>
+  <mapping code="0x1210" translation="Shenzhen Seastar Intelligence Co., Ltd."/>
+  <mapping code="0x1211" translation="Sensative AB"/>
+  <mapping code="0x1212" translation="SolarEdge"/>
+  <mapping code="0x1213" translation="Zipato"/>
+  <mapping code="0x1214" translation="China Fire &amp; Security Sensing Manufacturing (iHorn)"/>
+  <mapping code="0x1215" translation="Quby BV"/>
+  <mapping code="0x1216" translation="Hangzhou Roombanker Technology Co., Ltd."/>
+  <mapping code="0x1217" translation="Amazon Lab126"/>
+  <mapping code="0x1218" translation="Paulmann Licht GmbH"/>
+  <mapping code="0x1219" translation="Shenzhen Orvibo Electronics Co. Ltd."/>
+  <mapping code="0x121A" translation="TCI Telecommunications"/>
+  <mapping code="0x121B" translation="Mueller-Licht International Inc."/>
+  <mapping code="0x121C" translation="Aurora Limited"/>
+  <mapping code="0x121D" translation="SmartDCC"/>
+  <mapping code="0x121E" translation="Shanghai UMEinfo Co. Ltd."/>
+  <mapping code="0x121F" translation="carbonTRACK"/>
+  <mapping code="0x1220" translation="Somfy"/>
+  <mapping code="0x1221" translation="Viessmann Elektronik GmbH"/>
+  <mapping code="0x1222" translation="Hildebrand Technology Ltd"/>
+  <mapping code="0x1223" translation="Onkyo Technology Corporation"/>
+  <mapping code="0x1224" translation="Shenzhen Sunricher Technology Ltd."/>
+  <mapping code="0x1225" translation="Xiu Xiu Technology Co., Ltd"/>
+  <mapping code="0x1226" translation="Zumtobel Group"/>
+  <mapping code="0x1227" translation="Shenzhen Kaadas Intelligent Technology Co. Ltd"/>
+  <mapping code="0x1228" translation="Shanghai Xiaoyan Technology Co. Ltd"/>
+  <mapping code="0x1229" translation="Cypress Semiconductor"/>
+  <mapping code="0x122A" translation="XAL GmbH"/>
+  <mapping code="0x122B" translation="Inergy Systems LLC"/>
+  <mapping code="0x122C" translation="Alfred Karcher GmbH &amp; Co KG"/>
+  <mapping code="0x122D" translation="Adurolight Manufacturing"/>
+  <mapping code="0x122E" translation="Groupe Muller"/>
+  <mapping code="0x122F" translation="V-Mark Enterprises Inc."/>
+  <mapping code="0x1230" translation="Lead Energy AG"/>
+  <mapping code="0x1231" translation="Ultimate IOT (Henan) Technology Ltd."/>
+  <mapping code="0x1232" translation="Axxess Industries Inc."/>
+  <mapping code="0x1233" translation="Third Reality Inc."/>
+  <mapping code="0x1234" translation="DSR Corporation"/>
+  <mapping code="0x1235" translation="Guangzhou Vensi Intelligent Technology Co. Ltd."/>
+  <mapping code="0x1236" translation="Schlage Lock (Allegion)"/>
+  <mapping code="0x1237" translation="Net2Grid"/>
+  <mapping code="0x1238" translation="Airam Electric Oy Ab"/>
+  <mapping code="0x1239" translation="IMMAX WPB CZ"/>
+  <mapping code="0x123A" translation="ZIV Automation"/>
+  <mapping code="0x123B" translation="HangZhou iMagicTechnology Co., Ltd"/>
+  <mapping code="0x123C" translation="Xiamen Leelen Technology Co. Ltd."/>
+  <mapping code="0x123D" translation="Overkiz SAS"/>
+  <mapping code="0x123E" translation="Flonidan A/S"/>
+  <mapping code="0x123F" translation="HDL Automation Co., Ltd."/>
+  <mapping code="0x1240" translation="Ardomus Networks Corporation"/>
+  <mapping code="0x1241" translation="Samjin Co., Ltd."/>
+  <mapping code="0x1242" translation="FireAngel Safety Technology plc"/>
+  <mapping code="0x1243" translation="Indra Sistemas, S.A."/>
+  <mapping code="0x1244" translation="Shenzhen JBT Smart Lighting Co., Ltd."/>
+  <mapping code="0x1245" translation="GE Lighting &amp; Current"/>
+  <mapping code="0x1246" translation="Danfoss A/S"/>
+  <mapping code="0x1247" translation="NIVISS PHP Sp. z o.o. Sp.k."/>
+  <mapping code="0x1248" translation="Shenzhen Fengliyuan Energy Conservating Technology Co. Ltd"/>
+  <mapping code="0x1249" translation="NEXELEC"/>
+  <mapping code="0x124A" translation="Sichuan Behome Prominent Technology Co., Ltd"/>
+  <mapping code="0x124B" translation="Fujian Star-net Communication Co., Ltd."/>
+  <mapping code="0x124C" translation="Toshiba Visual Solutions Corporation"/>
+  <mapping code="0x124D" translation="Latchable, Inc."/>
+  <mapping code="0x124E" translation="L&amp;S Deutschland GmbH"/>
+  <mapping code="0x124F" translation="Gledopto Co., Ltd."/>
+  <mapping code="0x1250" translation="The Home Depot"/>
+  <mapping code="0x1251" translation="Neonlite Distribution Limited"/>
+  <mapping code="0x1252" translation="Arlo Technologies, Inc."/>
+  <mapping code="0x1253" translation="Xingluo Technology Co., Ltd."/>
+  <mapping code="0x1254" translation="Simon Electric (China) Co., Ltd."/>
+  <mapping code="0x1255" translation="Hangzhou Greatstar Industrial Co., Ltd."/>
+  <mapping code="0x1256" translation="Sequentric Energy Systems, LLC"/>
+  <mapping code="0x1257" translation="Solum Co., Ltd."/>
+  <mapping code="0x1258" translation="Eaglerise Electric &amp; Electronic (China) Co., Ltd."/>
+  <mapping code="0x1259" translation="Fantem Technologies (Shenzhen) Co., Ltd."/>
+  <mapping code="0x125A" translation="Yunding Network Technology (Beijing) Co., Ltd."/>
+  <mapping code="0x125B" translation="Atlantic Group"/>
+  <mapping code="0x125C" translation="Xiamen Intretech, Inc."/>
+  <mapping code="0x125D" translation="Tuya Global Inc."/>
+  <mapping code="0x125E" translation="Dnake (Xiamen) Intelligent Technology Co., Ltd."/>
+  <mapping code="0x125F" translation="Niko nv"/>
+  <mapping code="0x1260" translation="Emporia Energy"/>
+  <mapping code="0x1261" translation="Sikom AS"/>
+  <mapping code="0x1262" translation="AXIS Labs, Inc."/>
+  <mapping code="0x1263" translation="Current Products Corporation"/>
+  <mapping code="0x1264" translation="MeteRSit SRL"/>
+  <mapping code="0x1265" translation="HORNBACH Baumarkt AG"/>
+  <mapping code="0x1266" translation="DiCEworld s.r.l. a socio unico"/>
+  <mapping code="0x1267" translation="ARC Technology Co., Ltd"/>
+  <mapping code="0x1268" translation="Hangzhou Konke Information Technology Co., Ltd."/>
+  <mapping code="0x1269" translation="SALTO Systems S.L."/>
+  <mapping code="0x126A" translation="Shenzhen Shyugj Technology Co., Ltd"/>
+  <mapping code="0x126B" translation="Brayden Automation Corporation"/>
+  <mapping code="0x126C" translation="Environexus Pty. Ltd."/>
+  <mapping code="0x126D" translation="Eltra nv/sa"/>
+  <mapping code="0x126E" translation="Xiaomi Communications Co., Ltd."/>
+  <mapping code="0x126F" translation="Shanghai Shuncom Electronic Technology Co., Ltd."/>
+  <mapping code="0x1270" translation="Voltalis S.A"/>
+  <mapping code="0x1271" translation="FEELUX Co., Ltd."/>
+  <mapping code="0x1272" translation="SmartPlus Inc."/>
+  <mapping code="0x1273" translation="Halemeier GmbH"/>
+  <mapping code="0x1274" translation="Trust International BV"/>
+  <mapping code="0x1275" translation="Duke Energy Business Services LLC"/>
+  <mapping code="0x1276" translation="Calix, Inc."/>
+  <mapping code="0x1277" translation="ADEO"/>
+  <mapping code="0x1278" translation="Connected Response Limited"/>
+  <mapping code="0x1279" translation="StroyEnergoKom, Ltd."/>
+  <mapping code="0x127A" translation="Lumitech Lighting Solution GmbH"/>
+  <mapping code="0x127B" translation="Verdant Environmental Technologies"/>
+  <mapping code="0x127C" translation="Alfred International Inc."/>
+  <mapping code="0x127D" translation="Sansi LED Lighting co., LTD."/>
+  <mapping code="0x127E" translation="Mindtree Limited"/>
+  <mapping code="0x127F" translation="Nordic Semiconductor ASA"/>
+  <mapping code="0x1280" translation="Siterwell Electronics Co., Limited"/>
+  <mapping code="0x1281" translation="Briloner Leuchten GmbH &amp; Co. KG"/>
+  <mapping code="0x1282" translation="Shenzhen SEI Technology Co., Ltd."/>
+  <mapping code="0x1283" translation="Copper Labs, Inc."/>
+  <mapping code="0x1284" translation="Delta Dore"/>
+  <mapping code="0x1285" translation="Hager Group"/>
+  <mapping code="0x1286" translation="Shenzhen CoolKit Technology Co., Ltd"/>
+  <mapping code="0x1287" translation="Hangzhou Sky-Lighting Co., Ltd."/>
+  <mapping code="0x1288" translation="E.ON SE"/>
+  <mapping code="0x1289" translation="Lidl Stiftung &amp; Co. KG"/>
+  <mapping code="0x128A" translation="Sichuan Changhong Network Technologies Co., Ltd."/>
+  <mapping code="0x128B" translation="NodOn"/>
+  <mapping code="0x128C" translation="Jiangxi Innotech Technology Co., Ltd."/>
+  <mapping code="0x128D" translation="Mercator Pty Ltd"/>
+  <mapping code="0x128E" translation="Beijing Ruying Tech Limited"/>
+  <mapping code="0x128F" translation="EGLO Leuchten GmbH"/>
+  <mapping code="0x1290" translation="Pietro Fiorentini S.p.A"/>
+  <mapping code="0x1291" translation="Zehnder Group Vaux-Andigny"/>
+  <mapping code="0x1292" translation="BRK Brands, Inc."/>
+  <mapping code="0x1293" translation="Askey Computer Corp."/>
+  <mapping code="0x1294" translation="PassiveBolt, Inc."/>
+  <mapping code="0x1295" translation="AVM Audiovisuelles Marketing und Computersysteme Berlin"/>
+  <mapping code="0x1296" translation="Ningbo Suntech Lighting Technology Co., Ltd"/>
+  <mapping code="0x1297" translation="Société en Commandite Stello"/>
+  <mapping code="0x1298" translation="Vivint Smart Home"/>
+  <mapping code="0x1299" translation="Namron AS"/>
+  <mapping code="0x129A" translation="RADEMACHER Geraete-Elektronik GmbH"/>
+  <mapping code="0x129B" translation="OMO Systems LTD"/>
+  <mapping code="0x129C" translation="Siglis AG"/>
+  <mapping code="0x129D" translation="IMHOTEP CREATION"/>
+  <mapping code="0x129E" translation="icasa"/>
+  <mapping code="0x129F" translation="Level Home, Inc."/>
+  <mapping code="0x1300" translation="TIS Control Limited"/>
+  <mapping code="0x1301" translation="Radisys India Pvt. Ltd."/>
+  <mapping code="0x1302" translation="Veea Inc."/>
+  <mapping code="0x1303" translation="FELL Technology AS"/>
+  <mapping code="0x1304" translation="Sowilo Design Services, Ltd."/>
+  <mapping code="0x1305" translation="Lexi Devices, Inc."/>
+  <mapping code="0x1306" translation="Lifi Labs INC. dba LIFX"/>
+  <mapping code="0x1307" translation="GRUNDFOS Holding A/S"/>
+  <mapping code="0x1308" translation="SOURCING &amp; CREATION"/>
+  <mapping code="0x1309" translation="Kraken Technologies Ltd"/>
+  <mapping code="0x130A" translation="EVE SYSTEMS"/>
+  <mapping code="0x130B" translation="LITE-ON TECHNOLOGY CORPORATION"/>
+  <mapping code="0x130C" translation="Focalcrest Limited"/>
+  <mapping code="0x130D" translation="Bouffalo Lab (Nanjing) Co., Ltd."/>
+  <mapping code="0x130E" translation="Wyze Labs, Inc."/>
+  <mapping code="0x130F" translation="Z-Wave Europe GmbH"/>
+  <mapping code="0x1310" translation="AEOTEC LIMITED"/>
+  <mapping code="0x1311" translation="NGSTB Company Limited"/>
+  <mapping code="0x1312" translation="Qingdao Yeelink Information Technology Co., Ltd."/>
+  <mapping code="0x1313" translation="E-Smart Home Automation Systems Limited"/>
+  <mapping code="0x1314" translation="Fibar Group S.A."/>
+  <mapping code="0x1315" translation="Prolitech GmbH"/>
+  <mapping code="0x1316" translation="PanKore Integrated Circuit Technology Co. Ltd."/>
+  <mapping code="0x1317" translation="Logitech"/>
+  <mapping code="0x1318" translation="Piaro, Inc."/>
+  <mapping code="0x1319" translation="Mitsubishi Electric US, Inc."/>
+  <mapping code="0x131A" translation="Resideo Technologies, Inc."/>
+  <mapping code="0x131B" translation="Espressif Systems (Shanghai) Co., Ltd."/>
+  <mapping code="0x131C" translation="HELLA Sonnen- und Wetterschutztechnik GmbH"/>
+  <mapping code="0x131D" translation="Geberit International AG"/>
+  <mapping code="0x131E" translation="CAME S.p.A."/>
+  <mapping code="0x131F" translation="Guangzhou Elite Education &amp; Technology Co., Ltd."/>
+  <mapping code="0x1320" translation="Phyplus Microelectronics Limited"/>
+  <mapping code="0x1321" translation="Shenzhen Sonoff Technologies Co., Ltd."/>
+  <mapping code="0x1322" translation="Safe4 Security Group"/>
+  <mapping code="0x1323" translation="Shanghai MXCHIP Information Technology Co., Ltd."/>
+  <mapping code="0x1324" translation="HDC I-Controls"/>
+  <mapping code="0x1325" translation="Zuma Array Limited"/>
+  <mapping code="0x1326" translation="DECELECT"/>
+  <mapping code="0x1327" translation="Mill International AS"/>
+  <mapping code="0x1328" translation="HomeWizard BV"/>
+  <mapping code="0x1329" translation="Shenzhen Topband Co., Ltd"/>
+  <mapping code="0x132A" translation="Pressac Communications Ltd"/>
+  <mapping code="0x132B" translation="Origin Wireless, Inc."/>
+  <mapping code="0x132C" translation="Connecte AS"/>
+  <mapping code="0x132D" translation="YOKIS"/>
+  <mapping code="0x132E" translation="Xiamen Yankon Energetic Lighting Co., Ltd."/>
+  <mapping code="0x132F" translation="Yandex LLC"/>
+  <mapping code="0x1330" translation="Critical Software S.A."/>
+  <mapping code="0x1331" translation="Nortek Control"/>
+  <mapping code="0x1332" translation="BrightAI"/>
+  <mapping code="0x1333" translation="Becker-Antriebe GmbH"/>
+  <mapping code="0x1334" translation="Shenzhen TCL New Technology Company Limited"/>
+  <mapping code="0x1335" translation="Dexatek Technology Ltd"/>
+  <mapping code="0x1336" translation="Elelabs International Limited"/>
+  <mapping code="0x1337" translation="Datek Wireless AS"/>
+  <mapping code="0x1338" translation="ALDES"/>
+  <mapping code="0x1339" translation="Savant Company"/>
+  <mapping code="0x133A" translation="Ariston Thermo Group"/>
+  <mapping code="0x133B" translation="WAREMA Renkhoff SE"/>
+  <mapping code="0x133C" translation="VTech Holdings Limited"/>
+  <mapping code="0x133D" translation="Futurehome AS"/>
+  <mapping code="0x133E" translation="Cognitive Systems Corp."/>
+  <mapping code="0x133F" translation="ASR Microelectronics (Shenzhen) Co., Ltd."/>
+  <mapping code="0x1340" translation="Airios"/>
+  <mapping code="0x1341" translation="Guangdong OPPO Mobile Telecommunications Corp., Ltd."/>
+  <mapping code="0x1342" translation="Beken Corporation"/>
+  <mapping code="0x1343" translation="Corsair"/>
+  <mapping code="0x1344" translation="Eltako GmbH"/>
+  <mapping code="0x1345" translation="Chengdu Meross Technology Co., Ltd."/>
+  <mapping code="0x1346" translation="Rafael Microelectronics, Inc."/>
+  <mapping code="0x1347" translation="Aug. Winkhuas GmbH &amp; Co. KG"/>
+  <mapping code="0x1348" translation="Qingdao Haier Technology Co., Ltd."/>
+  <mapping code="0x1349" translation="Apple Inc."/>
+  <mapping code="0x134A" translation="Rollease Acmeda"/>
+  <mapping code="0x134B" translation="Nabu Casa, Inc."/>
+  <mapping code="0x134C" translation="Simon Holding"/>
+  <mapping code="0x134D" translation="KD Navien"/>
+  <mapping code="0x134E" translation="tado GmbH"/>
+  <mapping code="0x134F" translation="Mediola Connected Living AG"/>
+  <mapping code="0x1350" translation="Polynhome"/>
+  <mapping code="0x1351" translation="HooRii Technology Co., Ltd."/>
+  <mapping code="0x1353" translation="KIMIN Electronics Co., Ltd."/>
+  <mapping code="0x1354" translation="Zyax AB"/>
+  <mapping code="0x1355" translation="Baracoda SA"/>
+  <mapping code="0x1356" translation="Lennox International, Inc"/>
+  <mapping code="0x1357" translation="Teledatics Incorporated"/>
+  <mapping code="0x1358" translation="Top Victory Investments Limited"/>
+  <mapping code="0x1359" translation="GOQUAL Inc."/>
+  <mapping code="0x135A" translation="Siegenia Aubi KG"/>
+  <mapping code="0x135B" translation="Virtual Connected Controlling System (Singapore) Pte. Ltd."/>
+  <mapping code="0x135C" translation="Gigaset Communications GmbH"/>
+  <mapping code="0x135D" translation="Nuki Home Solutions GmbH"/>
+  <mapping code="0x135E" translation="Devicebook, Inc."/>
+  <mapping code="0x135F" translation="Consumer 2.0 Inc. (Rently)"/>
+  <mapping code="0x1360" translation="Edison Labs, Inc. (dba Orro)"/>
+  <mapping code="0x1361" translation="Inovelli"/>
+  <mapping code="0x1362" translation="deveritec GmbH"/>
+  <mapping code="0x1363" translation="Charter Communications"/>
+  <mapping code="0x1364" translation="Monolithic Power Systems, Inc."/>
+  <mapping code="0x1365" translation="Ningbo Dooya Mechanic &amp; Electronic Technology Co., Ltd"/>
+  <mapping code="0x1366" translation="Shenzhen SDMC Technology Co., Ltd."/>
+  <mapping code="0x1367" translation="HP Inc."/>
+  <mapping code="0x1368" translation="mui Lab, Inc."/>
+  <mapping code="0x1369" translation="BHtronics S.r.l."/>
+  <mapping code="0x136A" translation="Akuvox (Xiamen) Networks Co., Ltd."/>
+  <mapping code="0x1994" translation="Gewiss S.p.A."/>
+  <mapping code="0x2794" translation="Climax Technology Co., Ltd."/>
+  <mapping code="0x6006" translation="Google LLC"/>
+  <mapping code="0xC5A0" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A1" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A2" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A3" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A4" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A5" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A6" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A7" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A8" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5A9" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5AA" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5AB" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5AC" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5AD" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5AE" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xC5AF" translation="Connectivity Standards Alliance"/>
+  <mapping code="0xFFF1" translation="[Test vendor #1]"/>
+  <mapping code="0xFFF2" translation="[Test vendor #2]"/>
+  <mapping code="0xFFF3" translation="[Test vendor #3]"/>
+  <mapping code="0xFFF4" translation="[Test vendor #4]"/>
+  <mapping code="0xFFF5" translation="[Reserved]"/>
+  <mapping code="0xFFF6" translation="[Reserved]"/>
+  <mapping code="0xFFF7" translation="[Reserved]"/>
+  <mapping code="0xFFF8" translation="[Reserved]"/>
+  <mapping code="0xFFF9" translation="[Reserved]"/>
+  <mapping code="0xFFFA" translation="[Reserved]"/>
+  <mapping code="0xFFFB" translation="[Reserved]"/>
+  <mapping code="0xFFFC" translation="[Reserved]"/>
+  <mapping code="0xFFFD" translation="[Reserved]"/>
+  <mapping code="0xFFFE" translation="[Reserved]"/>
+  <mapping code="0xFFFF" translation="[Reserved]"/>
+</map>
diff --git a/src/app/zap-templates/zcl/zcl-with-test-extensions.json b/src/app/zap-templates/zcl/zcl-with-test-extensions.json
index 625c15f..2417531 100644
--- a/src/app/zap-templates/zcl/zcl-with-test-extensions.json
+++ b/src/app/zap-templates/zcl/zcl-with-test-extensions.json
@@ -83,7 +83,7 @@
         "zll-devices.xml",
         "zll.xml"
     ],
-    "manufacturersXml": "../../../../third_party/zap/repo/zcl-builtin/shared/manufacturers.xml",
+    "manufacturersXml": "../../../../src/app/zap-templates/zcl/data-model/manufacturers.xml",
     "options": {
         "text": {
             "defaultResponsePolicy": ["Always", "Conditional", "Never"]
diff --git a/src/app/zap-templates/zcl/zcl.json b/src/app/zap-templates/zcl/zcl.json
index 474ab92..801b04b 100644
--- a/src/app/zap-templates/zcl/zcl.json
+++ b/src/app/zap-templates/zcl/zcl.json
@@ -77,7 +77,7 @@
         "zll-devices.xml",
         "zll.xml"
     ],
-    "manufacturersXml": "../../../../third_party/zap/repo/zcl-builtin/shared/manufacturers.xml",
+    "manufacturersXml": "../../../../src/app/zap-templates/zcl/data-model/manufacturers.xml",
     "options": {
         "text": {
             "defaultResponsePolicy": ["Always", "Conditional", "Never"]
diff --git a/third_party/zap/repo b/third_party/zap/repo
deleted file mode 160000
index 22a059d..0000000
--- a/third_party/zap/repo
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 22a059d9e97278094cdeb7ec8c8db63d17804e87