Browse Source

completing merge

cdmoss 2 years ago
parent
commit
6d6712a4bf
100 changed files with 39287 additions and 3 deletions
  1. 5 3
      .env
  2. 47 0
      __tests__/main.ts
  3. 2 0
      android/app/src/main/assets/index.android.bundle
  4. BIN
      android/app/src/main/res/drawable-hdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png
  5. BIN
      android/app/src/main/res/drawable-mdpi/assets_barrier.png
  6. BIN
      android/app/src/main/res/drawable-mdpi/assets_cover.jpg
  7. BIN
      android/app/src/main/res/drawable-mdpi/assets_crosswalk.png
  8. BIN
      android/app/src/main/res/drawable-mdpi/assets_defaultpfp.png
  9. BIN
      android/app/src/main/res/drawable-mdpi/assets_ice.png
  10. BIN
      android/app/src/main/res/drawable-mdpi/assets_information.png
  11. BIN
      android/app/src/main/res/drawable-mdpi/assets_logowhite.png
  12. BIN
      android/app/src/main/res/drawable-mdpi/assets_power.png
  13. BIN
      android/app/src/main/res/drawable-mdpi/assets_stairs.png
  14. BIN
      android/app/src/main/res/drawable-mdpi/assets_uneven.png
  15. BIN
      android/app/src/main/res/drawable-mdpi/assets_washroom.png
  16. BIN
      android/app/src/main/res/drawable-mdpi/node_modules_reactnativepaper_src_assets_backchevron.png
  17. BIN
      android/app/src/main/res/drawable-mdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png
  18. BIN
      android/app/src/main/res/drawable-mdpi/node_modules_reactnavigation_stack_src_views_assets_backiconmask.png
  19. BIN
      android/app/src/main/res/drawable-mdpi/src_components_map_mainmapcomponent_landmark_images_information.png
  20. BIN
      android/app/src/main/res/drawable-mdpi/src_components_map_mainmapcomponent_landmark_images_power.png
  21. BIN
      android/app/src/main/res/drawable-mdpi/src_components_map_mainmapcomponent_landmark_images_stairs.png
  22. BIN
      android/app/src/main/res/drawable-xhdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png
  23. BIN
      android/app/src/main/res/drawable-xxhdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png
  24. BIN
      android/app/src/main/res/drawable-xxxhdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png
  25. 84 0
      android/app/src/main/res/raw/node_modules_axios_package.json
  26. 721 0
      android/app/src/main/res/raw/node_modules_csstree_data_patch.json
  27. 60 0
      android/app/src/main/res/raw/node_modules_csstree_package.json
  28. 1 0
      android/app/src/main/res/raw/node_modules_entities_lib_maps_decode.json
  29. 0 0
      android/app/src/main/res/raw/node_modules_entities_lib_maps_entities.json
  30. 1 0
      android/app/src/main/res/raw/node_modules_entities_lib_maps_legacy.json
  31. 1 0
      android/app/src/main/res/raw/node_modules_entities_lib_maps_xml.json
  32. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_antdesign.ttf
  33. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_entypo.ttf
  34. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_evilicons.ttf
  35. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_feather.ttf
  36. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontawesome.ttf
  37. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontawesome5_brands.ttf
  38. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontawesome5_regular.ttf
  39. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontawesome5_solid.ttf
  40. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontisto.ttf
  41. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_foundation.ttf
  42. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_ionicons.ttf
  43. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_materialcommunityicons.ttf
  44. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_materialicons.ttf
  45. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_octicons.ttf
  46. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_simplelineicons.ttf
  47. BIN
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_zocial.ttf
  48. 300 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_antdesign.json
  49. 413 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_entypo.json
  50. 72 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_evilicons.json
  51. 288 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_feather.json
  52. 788 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_fontawesome.json
  53. 1440 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_fontawesome5free.json
  54. 1599 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_fontawesome5free_meta.json
  55. 619 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_fontisto.json
  56. 285 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_foundation.json
  57. 3683 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_ionicons.json
  58. 5348 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_materialcommunityicons.json
  59. 1564 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_materialicons.json
  60. 186 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_octicons.json
  61. 191 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_simplelineicons.json
  62. 102 0
      android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_zocial.json
  63. 12 0
      android/app/src/main/res/raw/node_modules_expogooglefonts_racingsansone_metadata.json
  64. BIN
      android/app/src/main/res/raw/node_modules_expogooglefonts_racingsansone_racingsansone_400regular.ttf
  65. 560 0
      android/app/src/main/res/raw/node_modules_mdndata_css_atrules.json
  66. 9163 0
      android/app/src/main/res/raw/node_modules_mdndata_css_properties.json
  67. 761 0
      android/app/src/main/res/raw/node_modules_mdndata_css_syntaxes.json
  68. 11 0
      android/app/src/main/res/raw/node_modules_reactnativesvg_node_modules_cssselect_lib_procedure.json
  69. 102 0
      android/app/src/main/res/raw/node_modules_reactnativesvg_node_modules_domserializer_foreignnames.json
  70. 232 0
      coverage/lcov-report/atlas-mobile-ts/App.js.html
  71. 142 0
      coverage/lcov-report/atlas-mobile-ts/App.tsx.html
  72. 112 0
      coverage/lcov-report/atlas-mobile-ts/declarations.d.ts.html
  73. 191 0
      coverage/lcov-report/atlas-mobile-ts/index.html
  74. 112 0
      coverage/lcov-report/atlas-mobile-ts/index.js.html
  75. 166 0
      coverage/lcov-report/atlas-mobile-ts/jest.config.js.html
  76. 130 0
      coverage/lcov-report/atlas-mobile-ts/metro.config.js.html
  77. 610 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Atlas.tsx.html
  78. 217 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/AuthLayout.tsx.html
  79. 574 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/Intro.tsx.html
  80. 595 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegisterMain.tsx.html
  81. 433 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterCredential.tsx.html
  82. 490 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterImage.tsx.html
  83. 670 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterMeasurements.tsx.html
  84. 391 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterPassword.tsx.html
  85. 161 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/index.html
  86. 146 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Auth/index.html
  87. 142 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Badge.tsx.html
  88. 310 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Buttons.tsx.html
  89. 265 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Feed/Feed.tsx.html
  90. 116 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Feed/index.html
  91. 361 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Home.tsx.html
  92. 202 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/LandmarkPin.tsx.html
  93. 1051 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/IndoorMap.tsx.html
  94. 214 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/Map.styles.tsx.html
  95. 1126 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/OutdoorMap.tsx.html
  96. 176 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/index.html
  97. 157 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/modal.tsx.html
  98. 457 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/useMapState.ts.html
  99. 715 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/Panels/AddLandmarkPanel.tsx.html
  100. 214 0
      coverage/lcov-report/atlas-mobile-ts/src/components/Map/Panels/FilterPanel/FilterLmTypes.tsx.html

+ 5 - 3
.env

@@ -1,5 +1,7 @@
 SPOKESTACK_ID=c361ff3a-70c3-42e6-b0ee-0207edd03b18
 SPOKESTACK_TOKEN=1A8196594C401EB93035CC6D7D6328CF1855C2B359744E720953AC34B6F658CA
-#API_URL=http://192.168.3.81:8000
-API_URL=https://staging.clicknpush.ca
-#API_URL=https://app.clicknpush.ca
+
+API_URL=http://192.168.0.22
+
+#API_URL=https://app.clicknpush.ca
+

+ 47 - 0
__tests__/main.ts

@@ -0,0 +1,47 @@
+import WebDriverIO, {remote} from "webdriverio";
+
+const capabilities = {
+    platformName: 'android',
+    deviceName: 'ZY226TBLVN',
+    automationName: 'UiAutomator2',
+    appPackage: "com.clicknpush.mobile",
+    appActivity: ".MainActivity",
+    app: "C:\\Users\\cdmos\\Desktop\\cnp\\atlas-mobile-ts\\android\\app\\build\\outputs\\apk\\debug\\app-debug.apk",
+    appWaitForLaunch: false, // false needed to run with expo
+    newCommandTimeout: 3000,
+}
+
+jest.setTimeout(120000)
+
+const options = {
+  path: '/wd/hub/',
+  port: 4723,
+};
+
+let driver: WebDriverIO.Browser<"async">;
+
+// beforeAll(async () => {
+//   console.log('creating driver')
+//   driver = await remote({ ...options, capabilities});
+//   console.log('driver created')
+// });
+
+// afterAll(async () => {
+//   if (driver) {
+    
+//   }
+// });
+
+it('shows the root view', async () => {
+  console.log('creating driver')
+  const driver = await remote({ ...options, capabilities});
+  console.log('driver created')
+  const rootView = await driver.$('rootView').isDisplayed()
+  console.log(rootView)
+  expect(rootView).toBe(true)
+  await driver.deleteSession();
+})
+
+// describe('app load', () => {  
+//   // Add tests here
+// });

File diff suppressed because it is too large
+ 2 - 0
android/app/src/main/assets/index.android.bundle


BIN
android/app/src/main/res/drawable-hdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png


BIN
android/app/src/main/res/drawable-mdpi/assets_barrier.png


BIN
android/app/src/main/res/drawable-mdpi/assets_cover.jpg


BIN
android/app/src/main/res/drawable-mdpi/assets_crosswalk.png


BIN
android/app/src/main/res/drawable-mdpi/assets_defaultpfp.png


BIN
android/app/src/main/res/drawable-mdpi/assets_ice.png


BIN
android/app/src/main/res/drawable-mdpi/assets_information.png


BIN
android/app/src/main/res/drawable-mdpi/assets_logowhite.png


BIN
android/app/src/main/res/drawable-mdpi/assets_power.png


BIN
android/app/src/main/res/drawable-mdpi/assets_stairs.png


BIN
android/app/src/main/res/drawable-mdpi/assets_uneven.png


BIN
android/app/src/main/res/drawable-mdpi/assets_washroom.png


BIN
android/app/src/main/res/drawable-mdpi/node_modules_reactnativepaper_src_assets_backchevron.png


BIN
android/app/src/main/res/drawable-mdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png


BIN
android/app/src/main/res/drawable-mdpi/node_modules_reactnavigation_stack_src_views_assets_backiconmask.png


BIN
android/app/src/main/res/drawable-mdpi/src_components_map_mainmapcomponent_landmark_images_information.png


BIN
android/app/src/main/res/drawable-mdpi/src_components_map_mainmapcomponent_landmark_images_power.png


BIN
android/app/src/main/res/drawable-mdpi/src_components_map_mainmapcomponent_landmark_images_stairs.png


BIN
android/app/src/main/res/drawable-xhdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png


BIN
android/app/src/main/res/drawable-xxhdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png


BIN
android/app/src/main/res/drawable-xxxhdpi/node_modules_reactnavigation_stack_src_views_assets_backicon.png


+ 84 - 0
android/app/src/main/res/raw/node_modules_axios_package.json

@@ -0,0 +1,84 @@
+{
+  "name": "axios",
+  "version": "0.21.4",
+  "description": "Promise based HTTP client for the browser and node.js",
+  "main": "index.js",
+  "scripts": {
+    "test": "grunt test",
+    "start": "node ./sandbox/server.js",
+    "build": "NODE_ENV=production grunt build",
+    "preversion": "npm test",
+    "version": "npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",
+    "postversion": "git push && git push --tags",
+    "examples": "node ./examples/server.js",
+    "coveralls": "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
+    "fix": "eslint --fix lib/**/*.js"
+  },
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/axios/axios.git"
+  },
+  "keywords": [
+    "xhr",
+    "http",
+    "ajax",
+    "promise",
+    "node"
+  ],
+  "author": "Matt Zabriskie",
+  "license": "MIT",
+  "bugs": {
+    "url": "https://github.com/axios/axios/issues"
+  },
+  "homepage": "https://axios-http.com",
+  "devDependencies": {
+    "coveralls": "^3.0.0",
+    "es6-promise": "^4.2.4",
+    "grunt": "^1.3.0",
+    "grunt-banner": "^0.6.0",
+    "grunt-cli": "^1.2.0",
+    "grunt-contrib-clean": "^1.1.0",
+    "grunt-contrib-watch": "^1.0.0",
+    "grunt-eslint": "^23.0.0",
+    "grunt-karma": "^4.0.0",
+    "grunt-mocha-test": "^0.13.3",
+    "grunt-ts": "^6.0.0-beta.19",
+    "grunt-webpack": "^4.0.2",
+    "istanbul-instrumenter-loader": "^1.0.0",
+    "jasmine-core": "^2.4.1",
+    "karma": "^6.3.2",
+    "karma-chrome-launcher": "^3.1.0",
+    "karma-firefox-launcher": "^2.1.0",
+    "karma-jasmine": "^1.1.1",
+    "karma-jasmine-ajax": "^0.1.13",
+    "karma-safari-launcher": "^1.0.0",
+    "karma-sauce-launcher": "^4.3.6",
+    "karma-sinon": "^1.0.5",
+    "karma-sourcemap-loader": "^0.3.8",
+    "karma-webpack": "^4.0.2",
+    "load-grunt-tasks": "^3.5.2",
+    "minimist": "^1.2.0",
+    "mocha": "^8.2.1",
+    "sinon": "^4.5.0",
+    "terser-webpack-plugin": "^4.2.3",
+    "typescript": "^4.0.5",
+    "url-search-params": "^0.10.0",
+    "webpack": "^4.44.2",
+    "webpack-dev-server": "^3.11.0"
+  },
+  "browser": {
+    "./lib/adapters/http.js": "./lib/adapters/xhr.js"
+  },
+  "jsdelivr": "dist/axios.min.js",
+  "unpkg": "dist/axios.min.js",
+  "typings": "./index.d.ts",
+  "dependencies": {
+    "follow-redirects": "^1.14.0"
+  },
+  "bundlesize": [
+    {
+      "path": "./dist/axios.min.js",
+      "threshold": "5kB"
+    }
+  ]
+}

+ 721 - 0
android/app/src/main/res/raw/node_modules_csstree_data_patch.json

@@ -0,0 +1,721 @@
+{
+    "atrules": {
+        "charset": {
+            "prelude": "<string>"
+        },
+        "font-face": {
+            "descriptors": {
+                "unicode-range": {
+                    "comment": "replaces <unicode-range>, an old production name",
+                    "syntax": "<urange>#"
+                }
+            }
+        }
+    },
+    "properties": {
+        "-moz-background-clip": {
+            "comment": "deprecated syntax in old Firefox, https://developer.mozilla.org/en/docs/Web/CSS/background-clip",
+            "syntax": "padding | border"
+        },
+        "-moz-border-radius-bottomleft": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/border-bottom-left-radius",
+            "syntax": "<'border-bottom-left-radius'>"
+        },
+        "-moz-border-radius-bottomright": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/border-bottom-right-radius",
+            "syntax": "<'border-bottom-right-radius'>"
+        },
+        "-moz-border-radius-topleft": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/border-top-left-radius",
+            "syntax": "<'border-top-left-radius'>"
+        },
+        "-moz-border-radius-topright": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/border-bottom-right-radius",
+            "syntax": "<'border-bottom-right-radius'>"
+        },
+        "-moz-control-character-visibility": {
+            "comment": "firefox specific keywords, https://bugzilla.mozilla.org/show_bug.cgi?id=947588",
+            "syntax": "visible | hidden"
+        },
+        "-moz-osx-font-smoothing": {
+            "comment": "misssed old syntax https://developer.mozilla.org/en-US/docs/Web/CSS/font-smooth",
+            "syntax": "auto | grayscale"
+        },
+        "-moz-user-select": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/user-select",
+            "syntax": "none | text | all | -moz-none"
+        },
+        "-ms-flex-align": {
+            "comment": "misssed old syntax implemented in IE, https://www.w3.org/TR/2012/WD-css3-flexbox-20120322/#flex-align",
+            "syntax": "start | end | center | baseline | stretch"
+        },
+        "-ms-flex-item-align": {
+            "comment": "misssed old syntax implemented in IE, https://www.w3.org/TR/2012/WD-css3-flexbox-20120322/#flex-align",
+            "syntax": "auto | start | end | center | baseline | stretch"
+        },
+        "-ms-flex-line-pack": {
+            "comment": "misssed old syntax implemented in IE, https://www.w3.org/TR/2012/WD-css3-flexbox-20120322/#flex-line-pack",
+            "syntax": "start | end | center | justify | distribute | stretch"
+        },
+        "-ms-flex-negative": {
+            "comment": "misssed old syntax implemented in IE; TODO: find references for comfirmation",
+            "syntax": "<'flex-shrink'>"
+        },
+        "-ms-flex-pack": {
+            "comment": "misssed old syntax implemented in IE, https://www.w3.org/TR/2012/WD-css3-flexbox-20120322/#flex-pack",
+            "syntax": "start | end | center | justify | distribute"
+        },
+        "-ms-flex-order": {
+            "comment": "misssed old syntax implemented in IE; https://msdn.microsoft.com/en-us/library/jj127303(v=vs.85).aspx",
+            "syntax": "<integer>"
+        },
+        "-ms-flex-positive": {
+            "comment": "misssed old syntax implemented in IE; TODO: find references for comfirmation",
+            "syntax": "<'flex-grow'>"
+        },
+        "-ms-flex-preferred-size": {
+            "comment": "misssed old syntax implemented in IE; TODO: find references for comfirmation",
+            "syntax": "<'flex-basis'>"
+        },
+        "-ms-interpolation-mode": {
+            "comment": "https://msdn.microsoft.com/en-us/library/ff521095(v=vs.85).aspx",
+            "syntax": "nearest-neighbor | bicubic"
+        },
+        "-ms-grid-column-align": {
+            "comment": "add this property first since it uses as fallback for flexbox, https://msdn.microsoft.com/en-us/library/windows/apps/hh466338.aspx",
+            "syntax": "start | end | center | stretch"
+        },
+        "-ms-grid-row-align": {
+            "comment": "add this property first since it uses as fallback for flexbox, https://msdn.microsoft.com/en-us/library/windows/apps/hh466348.aspx",
+            "syntax": "start | end | center | stretch"
+        },
+        "-ms-hyphenate-limit-last": {
+            "comment": "misssed old syntax implemented in IE; https://www.w3.org/TR/css-text-4/#hyphenate-line-limits",
+            "syntax": "none | always | column | page | spread"
+        },
+        "-webkit-appearance": {
+            "comment": "webkit specific keywords",
+            "references": [
+                "http://css-infos.net/property/-webkit-appearance"
+            ],
+            "syntax": "none | button | button-bevel | caps-lock-indicator | caret | checkbox | default-button | inner-spin-button | listbox | listitem | media-controls-background | media-controls-fullscreen-background | media-current-time-display | media-enter-fullscreen-button | media-exit-fullscreen-button | media-fullscreen-button | media-mute-button | media-overlay-play-button | media-play-button | media-seek-back-button | media-seek-forward-button | media-slider | media-sliderthumb | media-time-remaining-display | media-toggle-closed-captions-button | media-volume-slider | media-volume-slider-container | media-volume-sliderthumb | menulist | menulist-button | menulist-text | menulist-textfield | meter | progress-bar | progress-bar-value | push-button | radio | scrollbarbutton-down | scrollbarbutton-left | scrollbarbutton-right | scrollbarbutton-up | scrollbargripper-horizontal | scrollbargripper-vertical | scrollbarthumb-horizontal | scrollbarthumb-vertical | scrollbartrack-horizontal | scrollbartrack-vertical | searchfield | searchfield-cancel-button | searchfield-decoration | searchfield-results-button | searchfield-results-decoration | slider-horizontal | slider-vertical | sliderthumb-horizontal | sliderthumb-vertical | square-button | textarea | textfield | -apple-pay-button"
+        },
+        "-webkit-background-clip": {
+            "comment": "https://developer.mozilla.org/en/docs/Web/CSS/background-clip",
+            "syntax": "[ <box> | border | padding | content | text ]#"
+        },
+        "-webkit-column-break-after": {
+            "comment": "added, http://help.dottoro.com/lcrthhhv.php",
+            "syntax": "always | auto | avoid"
+        },
+        "-webkit-column-break-before": {
+            "comment": "added, http://help.dottoro.com/lcxquvkf.php",
+            "syntax": "always | auto | avoid"
+        },
+        "-webkit-column-break-inside": {
+            "comment": "added, http://help.dottoro.com/lclhnthl.php",
+            "syntax": "always | auto | avoid"
+        },
+        "-webkit-font-smoothing": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/font-smooth",
+            "syntax": "auto | none | antialiased | subpixel-antialiased"
+        },
+        "-webkit-mask-box-image": {
+            "comment": "missed; https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-mask-box-image",
+            "syntax": "[ <url> | <gradient> | none ] [ <length-percentage>{4} <-webkit-mask-box-repeat>{2} ]?"
+        },
+        "-webkit-print-color-adjust": {
+            "comment": "missed",
+            "references": [
+                "https://developer.mozilla.org/en/docs/Web/CSS/-webkit-print-color-adjust"
+            ],
+            "syntax": "economy | exact"
+        },
+        "-webkit-text-security": {
+            "comment": "missed; http://help.dottoro.com/lcbkewgt.php",
+            "syntax": "none | circle | disc | square"
+        },
+        "-webkit-user-drag": {
+            "comment": "missed; http://help.dottoro.com/lcbixvwm.php",
+            "syntax": "none | element | auto"
+        },
+        "-webkit-user-select": {
+            "comment": "auto is supported by old webkit, https://developer.mozilla.org/en-US/docs/Web/CSS/user-select",
+            "syntax": "auto | none | text | all"
+        },
+        "alignment-baseline": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/text.html#AlignmentBaselineProperty"
+            ],
+            "syntax": "auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical"
+        },
+        "baseline-shift": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/text.html#BaselineShiftProperty"
+            ],
+            "syntax": "baseline | sub | super | <svg-length>"
+        },
+        "behavior": {
+            "comment": "added old IE property https://msdn.microsoft.com/en-us/library/ms530723(v=vs.85).aspx",
+            "syntax": "<url>+"
+        },
+        "clip-rule": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/masking.html#ClipRuleProperty"
+            ],
+            "syntax": "nonzero | evenodd"
+        },
+        "cue": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<'cue-before'> <'cue-after'>?"
+        },
+        "cue-after": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<url> <decibel>? | none"
+        },
+        "cue-before": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<url> <decibel>? | none"
+        },
+        "cursor": {
+            "comment": "added legacy keywords: hand, -webkit-grab. -webkit-grabbing, -webkit-zoom-in, -webkit-zoom-out, -moz-grab, -moz-grabbing, -moz-zoom-in, -moz-zoom-out",
+            "references": [
+                "https://www.sitepoint.com/css3-cursor-styles/"
+            ],
+            "syntax": "[ [ <url> [ <x> <y> ]? , ]* [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out | grab | grabbing | hand | -webkit-grab | -webkit-grabbing | -webkit-zoom-in | -webkit-zoom-out | -moz-grab | -moz-grabbing | -moz-zoom-in | -moz-zoom-out ] ]"
+        },
+        "display": {
+            "comment": "extended with -ms-flexbox",
+            "syntax": "| <-non-standard-display>"
+        },
+        "position": {
+            "comment": "extended with -webkit-sticky",
+            "syntax": "| -webkit-sticky"
+        },
+        "dominant-baseline": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/text.html#DominantBaselineProperty"
+            ],
+            "syntax": "auto | use-script | no-change | reset-size | ideographic | alphabetic | hanging | mathematical | central | middle | text-after-edge | text-before-edge"
+        },
+        "image-rendering": {
+            "comment": "extended with <-non-standard-image-rendering>, added SVG keywords optimizeSpeed and optimizeQuality",
+            "references": [
+                "https://developer.mozilla.org/en/docs/Web/CSS/image-rendering",
+                "https://www.w3.org/TR/SVG/painting.html#ImageRenderingProperty"
+            ],
+            "syntax": "| optimizeSpeed | optimizeQuality | <-non-standard-image-rendering>"
+        },
+        "fill": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#FillProperty"
+            ],
+            "syntax": "<paint>"
+        },
+        "fill-opacity": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#FillProperty"
+            ],
+            "syntax": "<number-zero-one>"
+        },
+        "fill-rule": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#FillProperty"
+            ],
+            "syntax": "nonzero | evenodd"
+        },
+        "filter": {
+            "comment": "extend with IE legacy syntaxes",
+            "syntax": "| <-ms-filter-function-list>"
+        },
+        "glyph-orientation-horizontal": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/text.html#GlyphOrientationHorizontalProperty"
+            ],
+            "syntax": "<angle>"
+        },
+        "glyph-orientation-vertical": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/text.html#GlyphOrientationVerticalProperty"
+            ],
+            "syntax": "<angle>"
+        },
+        "kerning": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/text.html#KerningProperty"
+            ],
+            "syntax": "auto | <svg-length>"
+        },
+        "letter-spacing": {
+            "comment": "fix syntax <length> -> <length-percentage>",
+            "references": [
+                "https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/letter-spacing"
+            ],
+            "syntax": "normal | <length-percentage>"
+        },
+        "marker": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#MarkerProperties"
+            ],
+            "syntax": "none | <url>"
+        },
+        "marker-end": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#MarkerProperties"
+            ],
+            "syntax": "none | <url>"
+        },
+        "marker-mid": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#MarkerProperties"
+            ],
+            "syntax": "none | <url>"
+        },
+        "marker-start": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#MarkerProperties"
+            ],
+            "syntax": "none | <url>"
+        },
+        "max-width": {
+            "comment": "fix auto -> none (https://github.com/mdn/data/pull/431); extend by non-standard width keywords https://developer.mozilla.org/en-US/docs/Web/CSS/max-width",
+            "syntax": "none | <length-percentage> | min-content | max-content | fit-content(<length-percentage>) | <-non-standard-width>"
+        },
+        "width": {
+            "comment": "per spec fit-content should be a function, however browsers are supporting it as a keyword (https://github.com/csstree/stylelint-validator/issues/29)",
+            "syntax": "| fit-content | -moz-fit-content | -webkit-fit-content"
+        },
+        "min-width": {
+            "comment": "extend by non-standard width keywords https://developer.mozilla.org/en-US/docs/Web/CSS/width",
+            "syntax": "auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>) | <-non-standard-width>"
+        },
+        "overflow": {
+            "comment": "extend by vendor keywords https://developer.mozilla.org/en-US/docs/Web/CSS/overflow",
+            "syntax": "| <-non-standard-overflow>"
+        },
+        "pause": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<'pause-before'> <'pause-after'>?"
+        },
+        "pause-after": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<time> | none | x-weak | weak | medium | strong | x-strong"
+        },
+        "pause-before": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<time> | none | x-weak | weak | medium | strong | x-strong"
+        },
+        "rest": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<'rest-before'> <'rest-after'>?"
+        },
+        "rest-after": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<time> | none | x-weak | weak | medium | strong | x-strong"
+        },
+        "rest-before": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<time> | none | x-weak | weak | medium | strong | x-strong"
+        },
+        "shape-rendering": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#ShapeRenderingPropert"
+            ],
+            "syntax": "auto | optimizeSpeed | crispEdges | geometricPrecision"
+        },
+        "src": {
+            "comment": "added @font-face's src property https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/src",
+            "syntax": "[ <url> [ format( <string># ) ]? | local( <family-name> ) ]#"
+        },
+        "speak": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "auto | none | normal"
+        },
+        "speak-as": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "normal | spell-out || digits || [ literal-punctuation | no-punctuation ]"
+        },
+        "stroke": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#StrokeProperties"
+            ],
+            "syntax": "<paint>"
+        },
+        "stroke-dasharray": {
+            "comment": "added SVG property; a list of comma and/or white space separated <length>s and <percentage>s",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#StrokeProperties"
+            ],
+            "syntax": "none | [ <svg-length>+ ]#"
+        },
+        "stroke-dashoffset": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#StrokeProperties"
+            ],
+            "syntax": "<svg-length>"
+        },
+        "stroke-linecap": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#StrokeProperties"
+            ],
+            "syntax": "butt | round | square"
+        },
+        "stroke-linejoin": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#StrokeProperties"
+            ],
+            "syntax": "miter | round | bevel"
+        },
+        "stroke-miterlimit": {
+            "comment": "added SVG property (<miterlimit> = <number-one-or-greater>) ",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#StrokeProperties"
+            ],
+            "syntax": "<number-one-or-greater>"
+        },
+        "stroke-opacity": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#StrokeProperties"
+            ],
+            "syntax": "<number-zero-one>"
+        },
+        "stroke-width": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/painting.html#StrokeProperties"
+            ],
+            "syntax": "<svg-length>"
+        },
+        "text-anchor": {
+            "comment": "added SVG property",
+            "references": [
+                "https://www.w3.org/TR/SVG/text.html#TextAlignmentProperties"
+            ],
+            "syntax": "start | middle | end"
+        },
+        "unicode-bidi": {
+            "comment": "added prefixed keywords https://developer.mozilla.org/en-US/docs/Web/CSS/unicode-bidi",
+            "syntax": "| -moz-isolate | -moz-isolate-override | -moz-plaintext | -webkit-isolate | -webkit-isolate-override | -webkit-plaintext"
+        },
+        "unicode-range": {
+            "comment": "added missed property https://developer.mozilla.org/en-US/docs/Web/CSS/%40font-face/unicode-range",
+            "syntax": "<urange>#"
+        },
+        "voice-balance": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<number> | left | center | right | leftwards | rightwards"
+        },
+        "voice-duration": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "auto | <time>"
+        },
+        "voice-family": {
+            "comment": "<name> -> <family-name>, https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "[ [ <family-name> | <generic-voice> ] , ]* [ <family-name> | <generic-voice> ] | preserve"
+        },
+        "voice-pitch": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<frequency> && absolute | [ [ x-low | low | medium | high | x-high ] || [ <frequency> | <semitones> | <percentage> ] ]"
+        },
+        "voice-range": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "<frequency> && absolute | [ [ x-low | low | medium | high | x-high ] || [ <frequency> | <semitones> | <percentage> ] ]"
+        },
+        "voice-rate": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "[ normal | x-slow | slow | medium | fast | x-fast ] || <percentage>"
+        },
+        "voice-stress": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "normal | strong | moderate | none | reduced"
+        },
+        "voice-volume": {
+            "comment": "https://www.w3.org/TR/css3-speech/#property-index",
+            "syntax": "silent | [ [ x-soft | soft | medium | loud | x-loud ] || <decibel> ]"
+        },
+        "writing-mode": {
+            "comment": "extend with SVG keywords",
+            "syntax": "| <svg-writing-mode>"
+        }
+    },
+    "syntaxes": {
+        "-legacy-gradient": {
+            "comment": "added collection of legacy gradient syntaxes",
+            "syntax": "<-webkit-gradient()> | <-legacy-linear-gradient> | <-legacy-repeating-linear-gradient> | <-legacy-radial-gradient> | <-legacy-repeating-radial-gradient>"
+        },
+        "-legacy-linear-gradient": {
+            "comment": "like standard syntax but w/o `to` keyword https://developer.mozilla.org/en-US/docs/Web/CSS/linear-gradient",
+            "syntax": "-moz-linear-gradient( <-legacy-linear-gradient-arguments> ) | -webkit-linear-gradient( <-legacy-linear-gradient-arguments> ) | -o-linear-gradient( <-legacy-linear-gradient-arguments> )"
+        },
+        "-legacy-repeating-linear-gradient": {
+            "comment": "like standard syntax but w/o `to` keyword https://developer.mozilla.org/en-US/docs/Web/CSS/linear-gradient",
+            "syntax": "-moz-repeating-linear-gradient( <-legacy-linear-gradient-arguments> ) | -webkit-repeating-linear-gradient( <-legacy-linear-gradient-arguments> ) | -o-repeating-linear-gradient( <-legacy-linear-gradient-arguments> )"
+        },
+        "-legacy-linear-gradient-arguments": {
+            "comment": "like standard syntax but w/o `to` keyword https://developer.mozilla.org/en-US/docs/Web/CSS/linear-gradient",
+            "syntax": "[ <angle> | <side-or-corner> ]? , <color-stop-list>"
+        },
+        "-legacy-radial-gradient": {
+            "comment": "deprecated syntax that implemented by some browsers https://www.w3.org/TR/2011/WD-css3-images-20110908/#radial-gradients",
+            "syntax": "-moz-radial-gradient( <-legacy-radial-gradient-arguments> ) | -webkit-radial-gradient( <-legacy-radial-gradient-arguments> ) | -o-radial-gradient( <-legacy-radial-gradient-arguments> )"
+        },
+        "-legacy-repeating-radial-gradient": {
+            "comment": "deprecated syntax that implemented by some browsers https://www.w3.org/TR/2011/WD-css3-images-20110908/#radial-gradients",
+            "syntax": "-moz-repeating-radial-gradient( <-legacy-radial-gradient-arguments> ) | -webkit-repeating-radial-gradient( <-legacy-radial-gradient-arguments> ) | -o-repeating-radial-gradient( <-legacy-radial-gradient-arguments> )"
+        },
+        "-legacy-radial-gradient-arguments": {
+            "comment": "deprecated syntax that implemented by some browsers https://www.w3.org/TR/2011/WD-css3-images-20110908/#radial-gradients",
+            "syntax": "[ <position> , ]? [ [ [ <-legacy-radial-gradient-shape> || <-legacy-radial-gradient-size> ] | [ <length> | <percentage> ]{2} ] , ]? <color-stop-list>"
+        },
+        "-legacy-radial-gradient-size": {
+            "comment": "before a standard it contains 2 extra keywords (`contain` and `cover`) https://www.w3.org/TR/2011/WD-css3-images-20110908/#ltsize",
+            "syntax": "closest-side | closest-corner | farthest-side | farthest-corner | contain | cover"
+        },
+        "-legacy-radial-gradient-shape": {
+            "comment": "define to double sure it doesn't extends in future https://www.w3.org/TR/2011/WD-css3-images-20110908/#ltshape",
+            "syntax": "circle | ellipse"
+        },
+        "-non-standard-font": {
+            "comment": "non standard fonts",
+            "references": [
+                "https://webkit.org/blog/3709/using-the-system-font-in-web-content/"
+            ],
+            "syntax": "-apple-system-body | -apple-system-headline | -apple-system-subheadline | -apple-system-caption1 | -apple-system-caption2 | -apple-system-footnote | -apple-system-short-body | -apple-system-short-headline | -apple-system-short-subheadline | -apple-system-short-caption1 | -apple-system-short-footnote | -apple-system-tall-body"
+        },
+        "-non-standard-color": {
+            "comment": "non standard colors",
+            "references": [
+                "http://cssdot.ru/%D0%A1%D0%BF%D1%80%D0%B0%D0%B2%D0%BE%D1%87%D0%BD%D0%B8%D0%BA_CSS/color-i305.html",
+                "https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Mozilla_Color_Preference_Extensions"
+            ],
+            "syntax": "-moz-ButtonDefault | -moz-ButtonHoverFace | -moz-ButtonHoverText | -moz-CellHighlight | -moz-CellHighlightText | -moz-Combobox | -moz-ComboboxText | -moz-Dialog | -moz-DialogText | -moz-dragtargetzone | -moz-EvenTreeRow | -moz-Field | -moz-FieldText | -moz-html-CellHighlight | -moz-html-CellHighlightText | -moz-mac-accentdarkestshadow | -moz-mac-accentdarkshadow | -moz-mac-accentface | -moz-mac-accentlightesthighlight | -moz-mac-accentlightshadow | -moz-mac-accentregularhighlight | -moz-mac-accentregularshadow | -moz-mac-chrome-active | -moz-mac-chrome-inactive | -moz-mac-focusring | -moz-mac-menuselect | -moz-mac-menushadow | -moz-mac-menutextselect | -moz-MenuHover | -moz-MenuHoverText | -moz-MenuBarText | -moz-MenuBarHoverText | -moz-nativehyperlinktext | -moz-OddTreeRow | -moz-win-communicationstext | -moz-win-mediatext | -moz-activehyperlinktext | -moz-default-background-color | -moz-default-color | -moz-hyperlinktext | -moz-visitedhyperlinktext | -webkit-activelink | -webkit-focus-ring-color | -webkit-link | -webkit-text"
+        },
+        "-non-standard-image-rendering": {
+            "comment": "non-standard keywords http://phrogz.net/tmp/canvas_image_zoom.html",
+            "syntax": "optimize-contrast | -moz-crisp-edges | -o-crisp-edges | -webkit-optimize-contrast"
+        },
+        "-non-standard-overflow": {
+            "comment": "non-standard keywords https://developer.mozilla.org/en-US/docs/Web/CSS/overflow",
+            "syntax": "-moz-scrollbars-none | -moz-scrollbars-horizontal | -moz-scrollbars-vertical | -moz-hidden-unscrollable"
+        },
+        "-non-standard-width": {
+            "comment": "non-standard keywords https://developer.mozilla.org/en-US/docs/Web/CSS/width",
+            "syntax": "fill-available | min-intrinsic | intrinsic | -moz-available | -moz-fit-content | -moz-min-content | -moz-max-content | -webkit-min-content | -webkit-max-content"
+        },
+        "-webkit-gradient()": {
+            "comment": "first Apple proposal gradient syntax https://webkit.org/blog/175/introducing-css-gradients/ - TODO: simplify when after match algorithm improvement ( [, point, radius | , point] -> [, radius]? , point )",
+            "syntax": "-webkit-gradient( <-webkit-gradient-type>, <-webkit-gradient-point> [, <-webkit-gradient-point> | , <-webkit-gradient-radius>, <-webkit-gradient-point> ] [, <-webkit-gradient-radius>]? [, <-webkit-gradient-color-stop>]* )"
+        },
+        "-webkit-gradient-color-stop": {
+            "comment": "first Apple proposal gradient syntax https://webkit.org/blog/175/introducing-css-gradients/",
+            "syntax": "from( <color> ) | color-stop( [ <number-zero-one> | <percentage> ] , <color> ) | to( <color> )"
+        },
+        "-webkit-gradient-point": {
+            "comment": "first Apple proposal gradient syntax https://webkit.org/blog/175/introducing-css-gradients/",
+            "syntax": "[ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]"
+        },
+        "-webkit-gradient-radius": {
+            "comment": "first Apple proposal gradient syntax https://webkit.org/blog/175/introducing-css-gradients/",
+            "syntax": "<length> | <percentage>"
+        },
+        "-webkit-gradient-type": {
+            "comment": "first Apple proposal gradient syntax https://webkit.org/blog/175/introducing-css-gradients/",
+            "syntax": "linear | radial"
+        },
+        "-webkit-mask-box-repeat": {
+            "comment": "missed; https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-mask-box-image",
+            "syntax": "repeat | stretch | round"
+        },
+        "-webkit-mask-clip-style": {
+            "comment": "missed; there is no enough information about `-webkit-mask-clip` property, but looks like all those keywords are working",
+            "syntax": "border | border-box | padding | padding-box | content | content-box | text"
+        },
+        "-ms-filter-function-list": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/-ms-filter",
+            "syntax": "<-ms-filter-function>+"
+        },
+        "-ms-filter-function": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/-ms-filter",
+            "syntax": "<-ms-filter-function-progid> | <-ms-filter-function-legacy>"
+        },
+        "-ms-filter-function-progid": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/-ms-filter",
+            "syntax": "'progid:' [ <ident-token> '.' ]* [ <ident-token> | <function-token> <any-value>? ) ]"
+        },
+        "-ms-filter-function-legacy": {
+            "comment": "https://developer.mozilla.org/en-US/docs/Web/CSS/-ms-filter",
+            "syntax": "<ident-token> | <function-token> <any-value>? )"
+        },
+        "-ms-filter": {
+            "syntax": "<string>"
+        },
+        "age": {
+            "comment": "https://www.w3.org/TR/css3-speech/#voice-family",
+            "syntax": "child | young | old"
+        },
+        "attr-name": {
+            "syntax": "<wq-name>"
+        },
+        "attr-fallback": {
+            "syntax": "<any-value>"
+        },
+        "border-radius": {
+            "comment": "missed, https://drafts.csswg.org/css-backgrounds-3/#the-border-radius",
+            "syntax": "<length-percentage>{1,2}"
+        },
+        "bottom": {
+            "comment": "missed; not sure we should add it, but no others except `shape` is using it so it's ok for now; https://drafts.fxtf.org/css-masking-1/#funcdef-clip-rect",
+            "syntax": "<length> | auto"
+        },
+        "content-list": {
+            "comment": "missed -> https://drafts.csswg.org/css-content/#typedef-content-list (document-url, <target> and leader() is omitted util stabilization)",
+            "syntax": "[ <string> | contents | <image> | <quote> | <target> | <leader()> | <attr()> | counter( <ident>, <'list-style-type'>? ) ]+"
+        },
+        "element()": {
+            "comment": "https://drafts.csswg.org/css-gcpm/#element-syntax & https://drafts.csswg.org/css-images-4/#element-notation",
+            "syntax": "element( <custom-ident> , [ first | start | last | first-except ]? ) | element( <id-selector> )"
+        },
+        "generic-voice": {
+            "comment": "https://www.w3.org/TR/css3-speech/#voice-family",
+            "syntax": "[ <age>? <gender> <integer>? ]"
+        },
+        "gender": {
+            "comment": "https://www.w3.org/TR/css3-speech/#voice-family",
+            "syntax": "male | female | neutral"
+        },
+        "generic-family": {
+            "comment": "added -apple-system",
+            "references": [
+                "https://webkit.org/blog/3709/using-the-system-font-in-web-content/"
+            ],
+            "syntax": "| -apple-system"
+        },
+        "gradient": {
+            "comment": "added legacy syntaxes support",
+            "syntax": "| <-legacy-gradient>"
+        },
+        "left": {
+            "comment": "missed; not sure we should add it, but no others except `shape` is using it so it's ok for now; https://drafts.fxtf.org/css-masking-1/#funcdef-clip-rect",
+            "syntax": "<length> | auto"
+        },
+        "mask-image": {
+            "comment": "missed; https://drafts.fxtf.org/css-masking-1/#the-mask-image",
+            "syntax": "<mask-reference>#"
+        },
+        "name-repeat": {
+            "comment": "missed, and looks like obsolete, keep it as is since other property syntaxes should be changed too; https://www.w3.org/TR/2015/WD-css-grid-1-20150917/#typedef-name-repeat",
+            "syntax": "repeat( [ <positive-integer> | auto-fill ], <line-names>+)"
+        },
+        "named-color": {
+            "comment": "added non standard color names",
+            "syntax": "| <-non-standard-color>"
+        },
+        "paint": {
+            "comment": "used by SVG https://www.w3.org/TR/SVG/painting.html#SpecifyingPaint",
+            "syntax": "none | <color> | <url> [ none | <color> ]? | context-fill | context-stroke"
+        },
+        "page-size": {
+            "comment": "https://www.w3.org/TR/css-page-3/#typedef-page-size-page-size",
+            "syntax": "A5 | A4 | A3 | B5 | B4 | JIS-B5 | JIS-B4 | letter | legal | ledger"
+        },
+        "ratio": {
+            "comment": "missed, https://drafts.csswg.org/mediaqueries-4/#typedef-ratio",
+            "syntax": "<integer> / <integer>"
+        },
+        "right": {
+            "comment": "missed; not sure we should add it, but no others except `shape` is using it so it's ok for now; https://drafts.fxtf.org/css-masking-1/#funcdef-clip-rect",
+            "syntax": "<length> | auto"
+        },
+        "shape": {
+            "comment": "missed spaces in function body and add backwards compatible syntax",
+            "syntax": "rect( <top>, <right>, <bottom>, <left> ) | rect( <top> <right> <bottom> <left> )"
+        },
+        "svg-length": {
+            "comment": "All coordinates and lengths in SVG can be specified with or without a unit identifier",
+            "references": [
+                "https://www.w3.org/TR/SVG11/coords.html#Units"
+            ],
+            "syntax": "<percentage> | <length> | <number>"
+        },
+        "svg-writing-mode": {
+            "comment": "SVG specific keywords (deprecated for CSS)",
+            "references": [
+                "https://developer.mozilla.org/en/docs/Web/CSS/writing-mode",
+                "https://www.w3.org/TR/SVG/text.html#WritingModeProperty"
+            ],
+            "syntax": "lr-tb | rl-tb | tb-rl | lr | rl | tb"
+        },
+        "top": {
+            "comment": "missed; not sure we should add it, but no others except `shape` is using it so it's ok for now; https://drafts.fxtf.org/css-masking-1/#funcdef-clip-rect",
+            "syntax": "<length> | auto"
+        },
+        "track-group": {
+            "comment": "used by old grid-columns and grid-rows syntax v0",
+            "syntax": "'(' [ <string>* <track-minmax> <string>* ]+ ')' [ '[' <positive-integer> ']' ]? | <track-minmax>"
+        },
+        "track-list-v0": {
+            "comment": "used by old grid-columns and grid-rows syntax v0",
+            "syntax": "[ <string>* <track-group> <string>* ]+ | none"
+        },
+        "track-minmax": {
+            "comment": "used by old grid-columns and grid-rows syntax v0",
+            "syntax": "minmax( <track-breadth> , <track-breadth> ) | auto | <track-breadth> | fit-content"
+        },
+        "x": {
+            "comment": "missed; not sure we should add it, but no others except `cursor` is using it so it's ok for now; https://drafts.csswg.org/css-ui-3/#cursor",
+            "syntax": "<number>"
+        },
+        "y": {
+            "comment": "missed; not sure we should add it, but no others except `cursor` is using so it's ok for now; https://drafts.csswg.org/css-ui-3/#cursor",
+            "syntax": "<number>"
+        },
+        "declaration": {
+            "comment": "missed, restored by https://drafts.csswg.org/css-syntax",
+            "syntax": "<ident-token> : <declaration-value>? [ '!' important ]?"
+        },
+        "declaration-list": {
+            "comment": "missed, restored by https://drafts.csswg.org/css-syntax",
+            "syntax": "[ <declaration>? ';' ]* <declaration>?"
+        },
+        "url": {
+            "comment": "https://drafts.csswg.org/css-values-4/#urls",
+            "syntax": "url( <string> <url-modifier>* ) | <url-token>"
+        },
+        "url-modifier": {
+            "comment": "https://drafts.csswg.org/css-values-4/#typedef-url-modifier",
+            "syntax": "<ident> | <function-token> <any-value> )"
+        },
+        "number-zero-one": {
+            "syntax": "<number [0,1]>"
+        },
+        "number-one-or-greater": {
+            "syntax": "<number [1,∞]>"
+        },
+        "positive-integer": {
+            "syntax": "<integer [0,∞]>"
+        },
+        "-non-standard-display": {
+            "syntax": "-ms-inline-flexbox | -ms-grid | -ms-inline-grid | -webkit-flex | -webkit-inline-flex | -webkit-box | -webkit-inline-box | -moz-inline-stack | -moz-box | -moz-inline-box"
+        }
+    }
+}

+ 60 - 0
android/app/src/main/res/raw/node_modules_csstree_package.json

@@ -0,0 +1,60 @@
+{
+  "name": "css-tree",
+  "version": "1.1.3",
+  "description": "A tool set for CSS: fast detailed parser (CSS → AST), walker (AST traversal), generator (AST → CSS) and lexer (validation and matching) based on specs and browser implementations",
+  "author": "Roman Dvornov <rdvornov@gmail.com> (https://github.com/lahmatiy)",
+  "license": "MIT",
+  "repository": "csstree/csstree",
+  "keywords": [
+    "css",
+    "ast",
+    "tokenizer",
+    "parser",
+    "walker",
+    "lexer",
+    "generator",
+    "utils",
+    "syntax",
+    "validation"
+  ],
+  "main": "lib/index.js",
+  "unpkg": "dist/csstree.min.js",
+  "jsdelivr": "dist/csstree.min.js",
+  "scripts": {
+    "build": "rollup --config",
+    "lint": "eslint data lib scripts test && node scripts/review-syntax-patch --lint && node scripts/update-docs --lint",
+    "lint-and-test": "npm run lint && npm test",
+    "update:docs": "node scripts/update-docs",
+    "review:syntax-patch": "node scripts/review-syntax-patch",
+    "test": "mocha --reporter progress",
+    "coverage": "nyc npm test",
+    "travis": "nyc npm run lint-and-test && npm run coveralls",
+    "coveralls": "nyc report --reporter=text-lcov | coveralls",
+    "prepublishOnly": "npm run build",
+    "hydrogen": "node --trace-hydrogen --trace-phase=Z --trace-deopt --code-comments --hydrogen-track-positions --redirect-code-traces --redirect-code-traces-to=code.asm --trace_hydrogen_file=code.cfg --print-opt-code bin/parse --stat -o /dev/null"
+  },
+  "dependencies": {
+    "mdn-data": "2.0.14",
+    "source-map": "^0.6.1"
+  },
+  "devDependencies": {
+    "@rollup/plugin-commonjs": "^11.0.2",
+    "@rollup/plugin-json": "^4.0.2",
+    "@rollup/plugin-node-resolve": "^7.1.1",
+    "coveralls": "^3.0.9",
+    "eslint": "^6.8.0",
+    "json-to-ast": "^2.1.0",
+    "mocha": "^6.2.3",
+    "nyc": "^14.1.1",
+    "rollup": "^1.32.1",
+    "rollup-plugin-terser": "^5.3.0"
+  },
+  "engines": {
+    "node": ">=8.0.0"
+  },
+  "files": [
+    "data",
+    "dist",
+    "lib"
+  ]
+}

+ 1 - 0
android/app/src/main/res/raw/node_modules_entities_lib_maps_decode.json

@@ -0,0 +1 @@
+{"0":65533,"128":8364,"130":8218,"131":402,"132":8222,"133":8230,"134":8224,"135":8225,"136":710,"137":8240,"138":352,"139":8249,"140":338,"142":381,"145":8216,"146":8217,"147":8220,"148":8221,"149":8226,"150":8211,"151":8212,"152":732,"153":8482,"154":353,"155":8250,"156":339,"158":382,"159":376}

File diff suppressed because it is too large
+ 0 - 0
android/app/src/main/res/raw/node_modules_entities_lib_maps_entities.json


+ 1 - 0
android/app/src/main/res/raw/node_modules_entities_lib_maps_legacy.json

@@ -0,0 +1 @@
+{"Aacute":"Á","aacute":"á","Acirc":"Â","acirc":"â","acute":"´","AElig":"Æ","aelig":"æ","Agrave":"À","agrave":"à","amp":"&","AMP":"&","Aring":"Å","aring":"å","Atilde":"Ã","atilde":"ã","Auml":"Ä","auml":"ä","brvbar":"¦","Ccedil":"Ç","ccedil":"ç","cedil":"¸","cent":"¢","copy":"©","COPY":"©","curren":"¤","deg":"°","divide":"÷","Eacute":"É","eacute":"é","Ecirc":"Ê","ecirc":"ê","Egrave":"È","egrave":"è","ETH":"Ð","eth":"ð","Euml":"Ë","euml":"ë","frac12":"½","frac14":"¼","frac34":"¾","gt":">","GT":">","Iacute":"Í","iacute":"í","Icirc":"Î","icirc":"î","iexcl":"¡","Igrave":"Ì","igrave":"ì","iquest":"¿","Iuml":"Ï","iuml":"ï","laquo":"«","lt":"<","LT":"<","macr":"¯","micro":"µ","middot":"·","nbsp":" ","not":"¬","Ntilde":"Ñ","ntilde":"ñ","Oacute":"Ó","oacute":"ó","Ocirc":"Ô","ocirc":"ô","Ograve":"Ò","ograve":"ò","ordf":"ª","ordm":"º","Oslash":"Ø","oslash":"ø","Otilde":"Õ","otilde":"õ","Ouml":"Ö","ouml":"ö","para":"¶","plusmn":"±","pound":"£","quot":"\"","QUOT":"\"","raquo":"»","reg":"®","REG":"®","sect":"§","shy":"­","sup1":"¹","sup2":"²","sup3":"³","szlig":"ß","THORN":"Þ","thorn":"þ","times":"×","Uacute":"Ú","uacute":"ú","Ucirc":"Û","ucirc":"û","Ugrave":"Ù","ugrave":"ù","uml":"¨","Uuml":"Ü","uuml":"ü","Yacute":"Ý","yacute":"ý","yen":"¥","yuml":"ÿ"}

+ 1 - 0
android/app/src/main/res/raw/node_modules_entities_lib_maps_xml.json

@@ -0,0 +1 @@
+{"amp":"&","apos":"'","gt":">","lt":"<","quot":"\""}

BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_antdesign.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_entypo.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_evilicons.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_feather.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontawesome.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontawesome5_brands.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontawesome5_regular.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontawesome5_solid.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_fontisto.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_foundation.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_ionicons.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_materialcommunityicons.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_materialicons.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_octicons.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_simplelineicons.ttf


BIN
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_fonts_zocial.ttf


+ 300 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_antdesign.json

@@ -0,0 +1,300 @@
+{
+  "stepforward": 58880,
+  "stepbackward": 58881,
+  "forward": 58882,
+  "banckward": 58883,
+  "caretright": 58884,
+  "caretleft": 58885,
+  "caretdown": 58886,
+  "caretup": 58887,
+  "rightcircle": 58888,
+  "leftcircle": 58889,
+  "upcircle": 58890,
+  "downcircle": 58891,
+  "rightcircleo": 58892,
+  "leftcircleo": 58893,
+  "upcircleo": 58894,
+  "downcircleo": 58895,
+  "verticleleft": 58896,
+  "verticleright": 58897,
+  "back": 58898,
+  "retweet": 58899,
+  "shrink": 58900,
+  "arrowsalt": 58901,
+  "doubleright": 58903,
+  "doubleleft": 58904,
+  "arrowdown": 58905,
+  "arrowup": 58906,
+  "arrowright": 58907,
+  "arrowleft": 58908,
+  "down": 58909,
+  "up": 58910,
+  "right": 58911,
+  "left": 58912,
+  "minussquareo": 58913,
+  "minuscircle": 58914,
+  "minuscircleo": 58915,
+  "minus": 58916,
+  "pluscircleo": 58917,
+  "pluscircle": 58918,
+  "plus": 58919,
+  "infocirlce": 58920,
+  "infocirlceo": 58921,
+  "info": 58922,
+  "exclamation": 58923,
+  "exclamationcircle": 58924,
+  "exclamationcircleo": 58925,
+  "closecircle": 58926,
+  "closecircleo": 58927,
+  "checkcircle": 58928,
+  "checkcircleo": 58929,
+  "check": 58930,
+  "close": 58931,
+  "customerservice": 58932,
+  "creditcard": 58933,
+  "codesquareo": 58934,
+  "book": 58935,
+  "barschart": 58936,
+  "bars": 58937,
+  "question": 58938,
+  "questioncircle": 58939,
+  "questioncircleo": 58940,
+  "pause": 58941,
+  "pausecircle": 58942,
+  "pausecircleo": 58943,
+  "clockcircle": 58944,
+  "clockcircleo": 58945,
+  "swap": 58946,
+  "swapleft": 58947,
+  "swapright": 58948,
+  "plussquareo": 58949,
+  "frown": 58950,
+  "menufold": 58968,
+  "mail": 58969,
+  "link": 58971,
+  "areachart": 58972,
+  "linechart": 58973,
+  "home": 58974,
+  "laptop": 58975,
+  "star": 58976,
+  "staro": 58977,
+  "filter": 58979,
+  "meho": 58982,
+  "meh": 58983,
+  "shoppingcart": 58984,
+  "save": 58985,
+  "user": 58986,
+  "videocamera": 58987,
+  "totop": 58988,
+  "team": 58989,
+  "sharealt": 58993,
+  "setting": 58994,
+  "picture": 58996,
+  "phone": 58997,
+  "paperclip": 58998,
+  "notification": 58999,
+  "menuunfold": 59001,
+  "inbox": 59002,
+  "lock": 59003,
+  "qrcode": 59004,
+  "tags": 59005,
+  "tagso": 59006,
+  "cloudo": 59007,
+  "cloud": 59008,
+  "cloudupload": 59009,
+  "clouddownload": 59010,
+  "clouddownloado": 59011,
+  "clouduploado": 59012,
+  "enviroment": 59013,
+  "enviromento": 59014,
+  "eye": 59015,
+  "eyeo": 59016,
+  "camera": 59017,
+  "camerao": 59018,
+  "windows": 59019,
+  "export2": 59024,
+  "export": 59025,
+  "circledowno": 59027,
+  "circledown": 59028,
+  "hdd": 59034,
+  "ie": 59035,
+  "delete": 59039,
+  "enter": 59040,
+  "pushpino": 59041,
+  "pushpin": 59042,
+  "heart": 59043,
+  "hearto": 59044,
+  "smile-circle": 59047,
+  "smileo": 59048,
+  "frowno": 59049,
+  "calculator": 59050,
+  "chrome": 59052,
+  "github": 59053,
+  "iconfontdesktop": 59060,
+  "caretcircleoup": 59061,
+  "upload": 59062,
+  "download": 59063,
+  "piechart": 59064,
+  "lock1": 59065,
+  "unlock": 59066,
+  "windowso": 59068,
+  "dotchart": 59069,
+  "barchart": 59070,
+  "codesquare": 59071,
+  "plussquare": 59072,
+  "minussquare": 59073,
+  "closesquare": 59074,
+  "closesquareo": 59075,
+  "checksquare": 59076,
+  "checksquareo": 59077,
+  "fastbackward": 59078,
+  "fastforward": 59079,
+  "upsquare": 59080,
+  "downsquare": 59081,
+  "leftsquare": 59082,
+  "rightsquare": 59083,
+  "rightsquareo": 59084,
+  "leftsquareo": 59085,
+  "down-square-o": 59086,
+  "up-square-o": 59087,
+  "play": 59088,
+  "playcircleo": 59089,
+  "tag": 59090,
+  "tago": 59091,
+  "addfile": 59664,
+  "folder1": 58978,
+  "file1": 58980,
+  "switcher": 59667,
+  "addfolder": 59668,
+  "folderopen": 59033,
+  "search1": 58992,
+  "ellipsis1": 58951,
+  "calendar": 59067,
+  "filetext1": 59032,
+  "copy1": 58952,
+  "jpgfile1": 59036,
+  "pdffile1": 59059,
+  "exclefile1": 59056,
+  "pptfile1": 59057,
+  "unknowfile1": 59055,
+  "wordfile1": 59058,
+  "dingding": 59683,
+  "dingding-o": 59685,
+  "mobile1": 59000,
+  "tablet1": 58990,
+  "bells": 58958,
+  "disconnect": 58959,
+  "database": 58960,
+  "barcode": 58962,
+  "hourglass": 58963,
+  "key": 58964,
+  "flag": 58965,
+  "layout": 58966,
+  "printer": 58995,
+  "USB": 59095,
+  "skin": 59096,
+  "tool": 59097,
+  "car": 59100,
+  "addusergroup": 59101,
+  "carryout": 59103,
+  "deleteuser": 59104,
+  "deleteusergroup": 59105,
+  "man": 59106,
+  "isv": 59107,
+  "gift": 59108,
+  "idcard": 59109,
+  "medicinebox": 59110,
+  "redenvelopes": 59111,
+  "rest": 59112,
+  "Safety": 59114,
+  "wallet": 59115,
+  "woman": 59116,
+  "adduser": 59117,
+  "bank": 59118,
+  "Trophy": 59119,
+  "loading1": 59054,
+  "loading2": 58957,
+  "like2": 59037,
+  "dislike2": 59038,
+  "like1": 58956,
+  "dislike1": 58955,
+  "bulb1": 58953,
+  "rocket1": 59663,
+  "select1": 58954,
+  "apple1": 59020,
+  "apple-o": 59092,
+  "android1": 59704,
+  "android": 59021,
+  "aliwangwang-o1": 59023,
+  "aliwangwang": 59022,
+  "pay-circle1": 59045,
+  "pay-circle-o1": 59046,
+  "poweroff": 59093,
+  "trademark": 58961,
+  "find": 59099,
+  "copyright": 59102,
+  "sound": 59113,
+  "earth": 59121,
+  "wifi": 59094,
+  "sync": 59098,
+  "login": 58967,
+  "logout": 58970,
+  "reload1": 58902,
+  "message1": 59051,
+  "shake": 59727,
+  "API": 59729,
+  "appstore-o": 59029,
+  "appstore1": 59030,
+  "scan1": 59031,
+  "exception1": 58981,
+  "contacts": 59120,
+  "solution1": 58991,
+  "fork": 59122,
+  "edit": 59026,
+  "form": 59798,
+  "warning": 59799,
+  "table": 59800,
+  "profile": 59801,
+  "dashboard": 59802,
+  "indent-left": 59814,
+  "indent-right": 59815,
+  "menu-unfold": 59820,
+  "menu-fold": 59821,
+  "antdesign": 59826,
+  "alipay-square": 59827,
+  "codepen-circle": 59828,
+  "google": 59829,
+  "amazon": 59830,
+  "codepen": 59831,
+  "facebook-square": 59832,
+  "dropbox": 59833,
+  "googleplus": 59834,
+  "linkedin-square": 59835,
+  "medium-monogram": 59836,
+  "gitlab": 59837,
+  "medium-wordmark": 59838,
+  "QQ": 59839,
+  "skype": 59840,
+  "taobao-square": 59841,
+  "alipay-circle": 59842,
+  "youtube": 59843,
+  "wechat": 59844,
+  "twitter": 59845,
+  "weibo": 59846,
+  "HTML": 59847,
+  "taobao-circle": 59123,
+  "weibo-circle": 59124,
+  "weibo-square": 59125,
+  "CodeSandbox": 59860,
+  "aliyun": 59892,
+  "zhihu": 59139,
+  "behance": 59143,
+  "dribbble": 59145,
+  "dribbble-square": 59146,
+  "behance-square": 59144,
+  "file-markdown": 59140,
+  "instagram": 59147,
+  "yuque": 59148,
+  "slack": 59141,
+  "slack-square": 59142
+}

+ 413 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_entypo.json

@@ -0,0 +1,413 @@
+{
+  "500px": 61696,
+  "500px-with-circle": 61697,
+  "add-to-list": 61698,
+  "add-user": 61699,
+  "address": 61700,
+  "adjust": 61701,
+  "air": 61702,
+  "aircraft": 61703,
+  "aircraft-landing": 61704,
+  "aircraft-take-off": 61705,
+  "align-bottom": 61706,
+  "align-horizontal-middle": 61707,
+  "align-left": 61708,
+  "align-right": 61709,
+  "align-top": 61710,
+  "align-vertical-middle": 61711,
+  "app-store": 61712,
+  "archive": 61713,
+  "area-graph": 61714,
+  "arrow-bold-down": 61715,
+  "arrow-bold-left": 61716,
+  "arrow-bold-right": 61717,
+  "arrow-bold-up": 61718,
+  "arrow-down": 61719,
+  "arrow-left": 61720,
+  "arrow-long-down": 61721,
+  "arrow-long-left": 61722,
+  "arrow-long-right": 61723,
+  "arrow-long-up": 61724,
+  "arrow-right": 61725,
+  "arrow-up": 61726,
+  "arrow-with-circle-down": 61727,
+  "arrow-with-circle-left": 61728,
+  "arrow-with-circle-right": 61729,
+  "arrow-with-circle-up": 61730,
+  "attachment": 61731,
+  "awareness-ribbon": 61732,
+  "back": 61733,
+  "back-in-time": 61734,
+  "baidu": 61735,
+  "bar-graph": 61736,
+  "basecamp": 61737,
+  "battery": 61738,
+  "beamed-note": 61739,
+  "behance": 61740,
+  "bell": 61741,
+  "blackboard": 61742,
+  "block": 61743,
+  "book": 61744,
+  "bookmark": 61745,
+  "bookmarks": 61746,
+  "bowl": 61747,
+  "box": 61748,
+  "briefcase": 61749,
+  "browser": 61750,
+  "brush": 61751,
+  "bucket": 61752,
+  "bug": 61753,
+  "cake": 61754,
+  "calculator": 61755,
+  "calendar": 61756,
+  "camera": 61757,
+  "ccw": 61758,
+  "chat": 61759,
+  "check": 61760,
+  "chevron-down": 61761,
+  "chevron-left": 61762,
+  "chevron-right": 61763,
+  "chevron-small-down": 61764,
+  "chevron-small-left": 61765,
+  "chevron-small-right": 61766,
+  "chevron-small-up": 61767,
+  "chevron-thin-down": 61768,
+  "chevron-thin-left": 61769,
+  "chevron-thin-right": 61770,
+  "chevron-thin-up": 61771,
+  "chevron-up": 61772,
+  "chevron-with-circle-down": 61773,
+  "chevron-with-circle-left": 61774,
+  "chevron-with-circle-right": 61775,
+  "chevron-with-circle-up": 61776,
+  "circle": 61777,
+  "circle-with-cross": 61778,
+  "circle-with-minus": 61779,
+  "circle-with-plus": 61780,
+  "circular-graph": 61781,
+  "clapperboard": 61782,
+  "classic-computer": 61783,
+  "clipboard": 61784,
+  "clock": 61785,
+  "cloud": 61786,
+  "code": 61787,
+  "cog": 61788,
+  "colours": 61789,
+  "compass": 61790,
+  "controller-fast-backward": 61791,
+  "controller-fast-forward": 61792,
+  "controller-jump-to-start": 61793,
+  "controller-next": 61794,
+  "controller-paus": 61795,
+  "controller-play": 61796,
+  "controller-record": 61797,
+  "controller-stop": 61798,
+  "controller-volume": 61799,
+  "copy": 61800,
+  "creative-cloud": 61801,
+  "creative-commons": 61802,
+  "creative-commons-attribution": 61803,
+  "creative-commons-noderivs": 61804,
+  "creative-commons-noncommercial-eu": 61805,
+  "creative-commons-noncommercial-us": 61806,
+  "creative-commons-public-domain": 61807,
+  "creative-commons-remix": 61808,
+  "creative-commons-share": 61809,
+  "creative-commons-sharealike": 61810,
+  "credit": 61811,
+  "credit-card": 61812,
+  "crop": 61813,
+  "cross": 61814,
+  "cup": 61815,
+  "cw": 61816,
+  "cycle": 61817,
+  "database": 61818,
+  "dial-pad": 61819,
+  "direction": 61820,
+  "document": 61821,
+  "document-landscape": 61822,
+  "documents": 61823,
+  "dot-single": 61824,
+  "dots-three-horizontal": 61825,
+  "dots-three-vertical": 61826,
+  "dots-two-horizontal": 61827,
+  "dots-two-vertical": 61828,
+  "download": 61829,
+  "dribbble": 61830,
+  "dribbble-with-circle": 61831,
+  "drink": 61832,
+  "drive": 61833,
+  "drop": 61834,
+  "dropbox": 61835,
+  "edit": 61836,
+  "email": 61837,
+  "emoji-flirt": 61838,
+  "emoji-happy": 61839,
+  "emoji-neutral": 61840,
+  "emoji-sad": 61841,
+  "erase": 61842,
+  "eraser": 61843,
+  "evernote": 61844,
+  "export": 61845,
+  "eye": 61846,
+  "eye-with-line": 61847,
+  "facebook": 61848,
+  "facebook-with-circle": 61849,
+  "feather": 61850,
+  "fingerprint": 61851,
+  "flag": 61852,
+  "flash": 61853,
+  "flashlight": 61854,
+  "flat-brush": 61855,
+  "flattr": 61856,
+  "flickr": 61857,
+  "flickr-with-circle": 61858,
+  "flow-branch": 61859,
+  "flow-cascade": 61860,
+  "flow-line": 61861,
+  "flow-parallel": 61862,
+  "flow-tree": 61863,
+  "flower": 61864,
+  "folder": 61865,
+  "folder-images": 61866,
+  "folder-music": 61867,
+  "folder-video": 61868,
+  "forward": 61869,
+  "foursquare": 61870,
+  "funnel": 61871,
+  "game-controller": 61872,
+  "gauge": 61873,
+  "github": 61874,
+  "github-with-circle": 61875,
+  "globe": 61876,
+  "google-": 61877,
+  "google--with-circle": 61878,
+  "google-drive": 61879,
+  "google-hangouts": 61880,
+  "google-play": 61881,
+  "graduation-cap": 61882,
+  "grid": 61883,
+  "grooveshark": 61884,
+  "hair-cross": 61885,
+  "hand": 61886,
+  "heart": 61887,
+  "heart-outlined": 61888,
+  "help": 61889,
+  "help-with-circle": 61890,
+  "home": 61891,
+  "hour-glass": 61892,
+  "houzz": 61893,
+  "icloud": 61894,
+  "image": 61895,
+  "image-inverted": 61896,
+  "images": 61897,
+  "inbox": 61898,
+  "infinity": 61899,
+  "info": 61900,
+  "info-with-circle": 61901,
+  "instagram": 61902,
+  "instagram-with-circle": 61903,
+  "install": 61904,
+  "key": 61905,
+  "keyboard": 61906,
+  "lab-flask": 61907,
+  "landline": 61908,
+  "language": 61909,
+  "laptop": 61910,
+  "lastfm": 61911,
+  "lastfm-with-circle": 61912,
+  "layers": 61913,
+  "leaf": 61914,
+  "level-down": 61915,
+  "level-up": 61916,
+  "lifebuoy": 61917,
+  "light-bulb": 61918,
+  "light-down": 61919,
+  "light-up": 61920,
+  "line-graph": 61921,
+  "link": 61922,
+  "linkedin": 61923,
+  "linkedin-with-circle": 61924,
+  "list": 61925,
+  "location": 61926,
+  "location-pin": 61927,
+  "lock": 61928,
+  "lock-open": 61929,
+  "log-out": 61930,
+  "login": 61931,
+  "loop": 61932,
+  "magnet": 61933,
+  "magnifying-glass": 61934,
+  "mail": 61935,
+  "mail-with-circle": 61936,
+  "man": 61937,
+  "map": 61938,
+  "mask": 61939,
+  "medal": 61940,
+  "medium": 61941,
+  "medium-with-circle": 61942,
+  "megaphone": 61943,
+  "menu": 61944,
+  "merge": 61945,
+  "message": 61946,
+  "mic": 61947,
+  "minus": 61948,
+  "mixi": 61949,
+  "mobile": 61950,
+  "modern-mic": 61951,
+  "moon": 61952,
+  "mouse": 61953,
+  "mouse-pointer": 61954,
+  "music": 61955,
+  "network": 61956,
+  "new": 61957,
+  "new-message": 61958,
+  "news": 61959,
+  "newsletter": 61960,
+  "note": 61961,
+  "notification": 61962,
+  "notifications-off": 61963,
+  "old-mobile": 61964,
+  "old-phone": 61965,
+  "onedrive": 61966,
+  "open-book": 61967,
+  "palette": 61968,
+  "paper-plane": 61969,
+  "paypal": 61970,
+  "pencil": 61971,
+  "phone": 61972,
+  "picasa": 61973,
+  "pie-chart": 61974,
+  "pin": 61975,
+  "pinterest": 61976,
+  "pinterest-with-circle": 61977,
+  "plus": 61978,
+  "popup": 61979,
+  "power-plug": 61980,
+  "price-ribbon": 61981,
+  "price-tag": 61982,
+  "print": 61983,
+  "progress-empty": 61984,
+  "progress-full": 61985,
+  "progress-one": 61986,
+  "progress-two": 61987,
+  "publish": 61988,
+  "qq": 61989,
+  "qq-with-circle": 61990,
+  "quote": 61991,
+  "radio": 61992,
+  "raft": 61993,
+  "raft-with-circle": 61994,
+  "rainbow": 61995,
+  "rdio": 61996,
+  "rdio-with-circle": 61997,
+  "remove-user": 61998,
+  "renren": 61999,
+  "reply": 62000,
+  "reply-all": 62001,
+  "resize-100-": 62002,
+  "resize-full-screen": 62003,
+  "retweet": 62004,
+  "rocket": 62005,
+  "round-brush": 62006,
+  "rss": 62007,
+  "ruler": 62008,
+  "save": 62009,
+  "scissors": 62010,
+  "scribd": 62011,
+  "select-arrows": 62012,
+  "share": 62013,
+  "share-alternative": 62014,
+  "shareable": 62015,
+  "shield": 62016,
+  "shop": 62017,
+  "shopping-bag": 62018,
+  "shopping-basket": 62019,
+  "shopping-cart": 62020,
+  "shuffle": 62021,
+  "signal": 62022,
+  "sina-weibo": 62023,
+  "skype": 62024,
+  "skype-with-circle": 62025,
+  "slideshare": 62026,
+  "smashing": 62027,
+  "sound": 62028,
+  "sound-mix": 62029,
+  "sound-mute": 62030,
+  "soundcloud": 62031,
+  "sports-club": 62032,
+  "spotify": 62033,
+  "spotify-with-circle": 62034,
+  "spreadsheet": 62035,
+  "squared-cross": 62036,
+  "squared-minus": 62037,
+  "squared-plus": 62038,
+  "star": 62039,
+  "star-outlined": 62040,
+  "stopwatch": 62041,
+  "stumbleupon": 62042,
+  "stumbleupon-with-circle": 62043,
+  "suitcase": 62044,
+  "swap": 62045,
+  "swarm": 62046,
+  "sweden": 62047,
+  "switch": 62048,
+  "tablet": 62049,
+  "tablet-mobile-combo": 62050,
+  "tag": 62051,
+  "text": 62052,
+  "text-document": 62053,
+  "text-document-inverted": 62054,
+  "thermometer": 62055,
+  "thumbs-down": 62056,
+  "thumbs-up": 62057,
+  "thunder-cloud": 62058,
+  "ticket": 62059,
+  "time-slot": 62060,
+  "tools": 62061,
+  "traffic-cone": 62062,
+  "trash": 62063,
+  "tree": 62064,
+  "triangle-down": 62065,
+  "triangle-left": 62066,
+  "triangle-right": 62067,
+  "triangle-up": 62068,
+  "tripadvisor": 62069,
+  "trophy": 62070,
+  "tumblr": 62071,
+  "tumblr-with-circle": 62072,
+  "tv": 62073,
+  "twitter": 62074,
+  "twitter-with-circle": 62075,
+  "typing": 62076,
+  "uninstall": 62077,
+  "unread": 62078,
+  "untag": 62079,
+  "upload": 62080,
+  "upload-to-cloud": 62081,
+  "user": 62082,
+  "users": 62083,
+  "v-card": 62084,
+  "video": 62085,
+  "video-camera": 62086,
+  "vimeo": 62087,
+  "vimeo-with-circle": 62088,
+  "vine": 62089,
+  "vine-with-circle": 62090,
+  "vinyl": 62091,
+  "vk": 62092,
+  "vk-alternitive": 62093,
+  "vk-with-circle": 62094,
+  "voicemail": 62095,
+  "wallet": 62096,
+  "warning": 62097,
+  "water": 62098,
+  "windows-store": 62099,
+  "xing": 62100,
+  "xing-with-circle": 62101,
+  "yelp": 62102,
+  "youko": 62103,
+  "youko-with-circle": 62104,
+  "youtube": 62105,
+  "youtube-with-circle": 62106
+}

+ 72 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_evilicons.json

@@ -0,0 +1,72 @@
+{
+  "archive": 61696,
+  "arrow-down": 61697,
+  "arrow-left": 61698,
+  "arrow-right": 61699,
+  "arrow-up": 61700,
+  "bell": 61701,
+  "calendar": 61702,
+  "camera": 61703,
+  "cart": 61704,
+  "chart": 61705,
+  "check": 61706,
+  "chevron-down": 61707,
+  "chevron-left": 61708,
+  "chevron-right": 61709,
+  "chevron-up": 61710,
+  "clock": 61711,
+  "close": 61712,
+  "close-o": 61713,
+  "comment": 61714,
+  "credit-card": 61715,
+  "envelope": 61716,
+  "exclamation": 61717,
+  "external-link": 61718,
+  "eye": 61719,
+  "gear": 61720,
+  "heart": 61721,
+  "image": 61722,
+  "like": 61723,
+  "link": 61724,
+  "location": 61725,
+  "lock": 61726,
+  "minus": 61727,
+  "navicon": 61728,
+  "paperclip": 61729,
+  "pencil": 61730,
+  "play": 61731,
+  "plus": 61732,
+  "pointer": 61733,
+  "question": 61734,
+  "redo": 61735,
+  "refresh": 61736,
+  "retweet": 61737,
+  "sc-facebook": 61738,
+  "sc-github": 61739,
+  "sc-google-plus": 61740,
+  "sc-instagram": 61741,
+  "sc-linkedin": 61742,
+  "sc-odnoklassniki": 61743,
+  "sc-pinterest": 61744,
+  "sc-skype": 61745,
+  "sc-soundcloud": 61746,
+  "sc-telegram": 61747,
+  "sc-tumblr": 61748,
+  "sc-twitter": 61749,
+  "sc-vimeo": 61750,
+  "sc-vk": 61751,
+  "sc-youtube": 61752,
+  "search": 61753,
+  "share-apple": 61754,
+  "share-google": 61755,
+  "spinner": 61756,
+  "spinner-2": 61757,
+  "spinner-3": 61758,
+  "star": 61759,
+  "tag": 61760,
+  "trash": 61761,
+  "trophy": 61762,
+  "undo": 61763,
+  "unlock": 61764,
+  "user": 61765
+}

+ 288 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_feather.json

@@ -0,0 +1,288 @@
+{
+  "activity": 61696,
+  "airplay": 61697,
+  "alert-circle": 61698,
+  "alert-octagon": 61699,
+  "alert-triangle": 61700,
+  "align-center": 61701,
+  "align-justify": 61702,
+  "align-left": 61703,
+  "align-right": 61704,
+  "anchor": 61705,
+  "aperture": 61706,
+  "archive": 61707,
+  "arrow-down": 61708,
+  "arrow-down-circle": 61709,
+  "arrow-down-left": 61710,
+  "arrow-down-right": 61711,
+  "arrow-left": 61712,
+  "arrow-left-circle": 61713,
+  "arrow-right": 61714,
+  "arrow-right-circle": 61715,
+  "arrow-up": 61716,
+  "arrow-up-circle": 61717,
+  "arrow-up-left": 61718,
+  "arrow-up-right": 61719,
+  "at-sign": 61720,
+  "award": 61721,
+  "bar-chart": 61722,
+  "bar-chart-2": 61723,
+  "battery": 61724,
+  "battery-charging": 61725,
+  "bell": 61726,
+  "bell-off": 61727,
+  "bluetooth": 61728,
+  "bold": 61729,
+  "book": 61730,
+  "book-open": 61731,
+  "bookmark": 61732,
+  "box": 61733,
+  "briefcase": 61734,
+  "calendar": 61735,
+  "camera": 61736,
+  "camera-off": 61737,
+  "cast": 61738,
+  "check": 61739,
+  "check-circle": 61740,
+  "check-square": 61741,
+  "chevron-down": 61742,
+  "chevron-left": 61743,
+  "chevron-right": 61744,
+  "chevron-up": 61745,
+  "chevrons-down": 61746,
+  "chevrons-left": 61747,
+  "chevrons-right": 61748,
+  "chevrons-up": 61749,
+  "chrome": 61750,
+  "circle": 61751,
+  "clipboard": 61752,
+  "clock": 61753,
+  "cloud": 61754,
+  "cloud-drizzle": 61755,
+  "cloud-lightning": 61756,
+  "cloud-off": 61757,
+  "cloud-rain": 61758,
+  "cloud-snow": 61759,
+  "code": 61760,
+  "codepen": 61761,
+  "codesandbox": 61762,
+  "coffee": 61763,
+  "columns": 61764,
+  "command": 61765,
+  "compass": 61766,
+  "copy": 61767,
+  "corner-down-left": 61768,
+  "corner-down-right": 61769,
+  "corner-left-down": 61770,
+  "corner-left-up": 61771,
+  "corner-right-down": 61772,
+  "corner-right-up": 61773,
+  "corner-up-left": 61774,
+  "corner-up-right": 61775,
+  "cpu": 61776,
+  "credit-card": 61777,
+  "crop": 61778,
+  "crosshair": 61779,
+  "database": 61780,
+  "delete": 61781,
+  "disc": 61782,
+  "divide": 61783,
+  "divide-circle": 61784,
+  "divide-square": 61785,
+  "dollar-sign": 61786,
+  "download": 61787,
+  "download-cloud": 61788,
+  "dribbble": 61789,
+  "droplet": 61790,
+  "edit": 61791,
+  "edit-2": 61792,
+  "edit-3": 61793,
+  "external-link": 61794,
+  "eye": 61795,
+  "eye-off": 61796,
+  "facebook": 61797,
+  "fast-forward": 61798,
+  "feather": 61799,
+  "figma": 61800,
+  "file": 61801,
+  "file-minus": 61802,
+  "file-plus": 61803,
+  "file-text": 61804,
+  "film": 61805,
+  "filter": 61806,
+  "flag": 61807,
+  "folder": 61808,
+  "folder-minus": 61809,
+  "folder-plus": 61810,
+  "framer": 61811,
+  "frown": 61812,
+  "gift": 61813,
+  "git-branch": 61814,
+  "git-commit": 61815,
+  "git-merge": 61816,
+  "git-pull-request": 61817,
+  "github": 61818,
+  "gitlab": 61819,
+  "globe": 61820,
+  "grid": 61821,
+  "hard-drive": 61822,
+  "hash": 61823,
+  "headphones": 61824,
+  "heart": 61825,
+  "help-circle": 61826,
+  "hexagon": 61827,
+  "home": 61828,
+  "image": 61829,
+  "inbox": 61830,
+  "info": 61831,
+  "instagram": 61832,
+  "italic": 61833,
+  "key": 61834,
+  "layers": 61835,
+  "layout": 61836,
+  "life-buoy": 61837,
+  "link": 61838,
+  "link-2": 61839,
+  "linkedin": 61840,
+  "list": 61841,
+  "loader": 61842,
+  "lock": 61843,
+  "log-in": 61844,
+  "log-out": 61845,
+  "mail": 61846,
+  "map": 61847,
+  "map-pin": 61848,
+  "maximize": 61849,
+  "maximize-2": 61850,
+  "meh": 61851,
+  "menu": 61852,
+  "message-circle": 61853,
+  "message-square": 61854,
+  "mic": 61855,
+  "mic-off": 61856,
+  "minimize": 61857,
+  "minimize-2": 61858,
+  "minus": 61859,
+  "minus-circle": 61860,
+  "minus-square": 61861,
+  "monitor": 61862,
+  "moon": 61863,
+  "more-horizontal": 61864,
+  "more-vertical": 61865,
+  "mouse-pointer": 61866,
+  "move": 61867,
+  "music": 61868,
+  "navigation": 61869,
+  "navigation-2": 61870,
+  "octagon": 61871,
+  "package": 61872,
+  "paperclip": 61873,
+  "pause": 61874,
+  "pause-circle": 61875,
+  "pen-tool": 61876,
+  "percent": 61877,
+  "phone": 61878,
+  "phone-call": 61879,
+  "phone-forwarded": 61880,
+  "phone-incoming": 61881,
+  "phone-missed": 61882,
+  "phone-off": 61883,
+  "phone-outgoing": 61884,
+  "pie-chart": 61885,
+  "play": 61886,
+  "play-circle": 61887,
+  "plus": 61888,
+  "plus-circle": 61889,
+  "plus-square": 61890,
+  "pocket": 61891,
+  "power": 61892,
+  "printer": 61893,
+  "radio": 61894,
+  "refresh-ccw": 61895,
+  "refresh-cw": 61896,
+  "repeat": 61897,
+  "rewind": 61898,
+  "rotate-ccw": 61899,
+  "rotate-cw": 61900,
+  "rss": 61901,
+  "save": 61902,
+  "scissors": 61903,
+  "search": 61904,
+  "send": 61905,
+  "server": 61906,
+  "settings": 61907,
+  "share": 61908,
+  "share-2": 61909,
+  "shield": 61910,
+  "shield-off": 61911,
+  "shopping-bag": 61912,
+  "shopping-cart": 61913,
+  "shuffle": 61914,
+  "sidebar": 61915,
+  "skip-back": 61916,
+  "skip-forward": 61917,
+  "slack": 61918,
+  "slash": 61919,
+  "sliders": 61920,
+  "smartphone": 61921,
+  "smile": 61922,
+  "speaker": 61923,
+  "square": 61924,
+  "star": 61925,
+  "stop-circle": 61926,
+  "sun": 61927,
+  "sunrise": 61928,
+  "sunset": 61929,
+  "tablet": 61930,
+  "tag": 61931,
+  "target": 61932,
+  "terminal": 61933,
+  "thermometer": 61934,
+  "thumbs-down": 61935,
+  "thumbs-up": 61936,
+  "toggle-left": 61937,
+  "toggle-right": 61938,
+  "tool": 61939,
+  "trash": 61940,
+  "trash-2": 61941,
+  "trello": 61942,
+  "trending-down": 61943,
+  "trending-up": 61944,
+  "triangle": 61945,
+  "truck": 61946,
+  "tv": 61947,
+  "twitch": 61948,
+  "twitter": 61949,
+  "type": 61950,
+  "umbrella": 61951,
+  "underline": 61952,
+  "unlock": 61953,
+  "upload": 61954,
+  "upload-cloud": 61955,
+  "user": 61956,
+  "user-check": 61957,
+  "user-minus": 61958,
+  "user-plus": 61959,
+  "user-x": 61960,
+  "users": 61961,
+  "video": 61962,
+  "video-off": 61963,
+  "voicemail": 61964,
+  "volume": 61965,
+  "volume-1": 61966,
+  "volume-2": 61967,
+  "volume-x": 61968,
+  "watch": 61969,
+  "wifi": 61970,
+  "wifi-off": 61971,
+  "wind": 61972,
+  "x": 61973,
+  "x-circle": 61974,
+  "x-octagon": 61975,
+  "x-square": 61976,
+  "youtube": 61977,
+  "zap": 61978,
+  "zap-off": 61979,
+  "zoom-in": 61980,
+  "zoom-out": 61981
+}

+ 788 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_fontawesome.json

@@ -0,0 +1,788 @@
+{
+  "glass": 61440,
+  "music": 61441,
+  "search": 61442,
+  "envelope-o": 61443,
+  "heart": 61444,
+  "star": 61445,
+  "star-o": 61446,
+  "user": 61447,
+  "film": 61448,
+  "th-large": 61449,
+  "th": 61450,
+  "th-list": 61451,
+  "check": 61452,
+  "remove": 61453,
+  "close": 61453,
+  "times": 61453,
+  "search-plus": 61454,
+  "search-minus": 61456,
+  "power-off": 61457,
+  "signal": 61458,
+  "gear": 61459,
+  "cog": 61459,
+  "trash-o": 61460,
+  "home": 61461,
+  "file-o": 61462,
+  "clock-o": 61463,
+  "road": 61464,
+  "download": 61465,
+  "arrow-circle-o-down": 61466,
+  "arrow-circle-o-up": 61467,
+  "inbox": 61468,
+  "play-circle-o": 61469,
+  "rotate-right": 61470,
+  "repeat": 61470,
+  "refresh": 61473,
+  "list-alt": 61474,
+  "lock": 61475,
+  "flag": 61476,
+  "headphones": 61477,
+  "volume-off": 61478,
+  "volume-down": 61479,
+  "volume-up": 61480,
+  "qrcode": 61481,
+  "barcode": 61482,
+  "tag": 61483,
+  "tags": 61484,
+  "book": 61485,
+  "bookmark": 61486,
+  "print": 61487,
+  "camera": 61488,
+  "font": 61489,
+  "bold": 61490,
+  "italic": 61491,
+  "text-height": 61492,
+  "text-width": 61493,
+  "align-left": 61494,
+  "align-center": 61495,
+  "align-right": 61496,
+  "align-justify": 61497,
+  "list": 61498,
+  "dedent": 61499,
+  "outdent": 61499,
+  "indent": 61500,
+  "video-camera": 61501,
+  "photo": 61502,
+  "image": 61502,
+  "picture-o": 61502,
+  "pencil": 61504,
+  "map-marker": 61505,
+  "adjust": 61506,
+  "tint": 61507,
+  "edit": 61508,
+  "pencil-square-o": 61508,
+  "share-square-o": 61509,
+  "check-square-o": 61510,
+  "arrows": 61511,
+  "step-backward": 61512,
+  "fast-backward": 61513,
+  "backward": 61514,
+  "play": 61515,
+  "pause": 61516,
+  "stop": 61517,
+  "forward": 61518,
+  "fast-forward": 61520,
+  "step-forward": 61521,
+  "eject": 61522,
+  "chevron-left": 61523,
+  "chevron-right": 61524,
+  "plus-circle": 61525,
+  "minus-circle": 61526,
+  "times-circle": 61527,
+  "check-circle": 61528,
+  "question-circle": 61529,
+  "info-circle": 61530,
+  "crosshairs": 61531,
+  "times-circle-o": 61532,
+  "check-circle-o": 61533,
+  "ban": 61534,
+  "arrow-left": 61536,
+  "arrow-right": 61537,
+  "arrow-up": 61538,
+  "arrow-down": 61539,
+  "mail-forward": 61540,
+  "share": 61540,
+  "expand": 61541,
+  "compress": 61542,
+  "plus": 61543,
+  "minus": 61544,
+  "asterisk": 61545,
+  "exclamation-circle": 61546,
+  "gift": 61547,
+  "leaf": 61548,
+  "fire": 61549,
+  "eye": 61550,
+  "eye-slash": 61552,
+  "warning": 61553,
+  "exclamation-triangle": 61553,
+  "plane": 61554,
+  "calendar": 61555,
+  "random": 61556,
+  "comment": 61557,
+  "magnet": 61558,
+  "chevron-up": 61559,
+  "chevron-down": 61560,
+  "retweet": 61561,
+  "shopping-cart": 61562,
+  "folder": 61563,
+  "folder-open": 61564,
+  "arrows-v": 61565,
+  "arrows-h": 61566,
+  "bar-chart-o": 61568,
+  "bar-chart": 61568,
+  "twitter-square": 61569,
+  "facebook-square": 61570,
+  "camera-retro": 61571,
+  "key": 61572,
+  "gears": 61573,
+  "cogs": 61573,
+  "comments": 61574,
+  "thumbs-o-up": 61575,
+  "thumbs-o-down": 61576,
+  "star-half": 61577,
+  "heart-o": 61578,
+  "sign-out": 61579,
+  "linkedin-square": 61580,
+  "thumb-tack": 61581,
+  "external-link": 61582,
+  "sign-in": 61584,
+  "trophy": 61585,
+  "github-square": 61586,
+  "upload": 61587,
+  "lemon-o": 61588,
+  "phone": 61589,
+  "square-o": 61590,
+  "bookmark-o": 61591,
+  "phone-square": 61592,
+  "twitter": 61593,
+  "facebook-f": 61594,
+  "facebook": 61594,
+  "github": 61595,
+  "unlock": 61596,
+  "credit-card": 61597,
+  "feed": 61598,
+  "rss": 61598,
+  "hdd-o": 61600,
+  "bullhorn": 61601,
+  "bell": 61683,
+  "certificate": 61603,
+  "hand-o-right": 61604,
+  "hand-o-left": 61605,
+  "hand-o-up": 61606,
+  "hand-o-down": 61607,
+  "arrow-circle-left": 61608,
+  "arrow-circle-right": 61609,
+  "arrow-circle-up": 61610,
+  "arrow-circle-down": 61611,
+  "globe": 61612,
+  "wrench": 61613,
+  "tasks": 61614,
+  "filter": 61616,
+  "briefcase": 61617,
+  "arrows-alt": 61618,
+  "group": 61632,
+  "users": 61632,
+  "chain": 61633,
+  "link": 61633,
+  "cloud": 61634,
+  "flask": 61635,
+  "cut": 61636,
+  "scissors": 61636,
+  "copy": 61637,
+  "files-o": 61637,
+  "paperclip": 61638,
+  "save": 61639,
+  "floppy-o": 61639,
+  "square": 61640,
+  "navicon": 61641,
+  "reorder": 61641,
+  "bars": 61641,
+  "list-ul": 61642,
+  "list-ol": 61643,
+  "strikethrough": 61644,
+  "underline": 61645,
+  "table": 61646,
+  "magic": 61648,
+  "truck": 61649,
+  "pinterest": 61650,
+  "pinterest-square": 61651,
+  "google-plus-square": 61652,
+  "google-plus": 61653,
+  "money": 61654,
+  "caret-down": 61655,
+  "caret-up": 61656,
+  "caret-left": 61657,
+  "caret-right": 61658,
+  "columns": 61659,
+  "unsorted": 61660,
+  "sort": 61660,
+  "sort-down": 61661,
+  "sort-desc": 61661,
+  "sort-up": 61662,
+  "sort-asc": 61662,
+  "envelope": 61664,
+  "linkedin": 61665,
+  "rotate-left": 61666,
+  "undo": 61666,
+  "legal": 61667,
+  "gavel": 61667,
+  "dashboard": 61668,
+  "tachometer": 61668,
+  "comment-o": 61669,
+  "comments-o": 61670,
+  "flash": 61671,
+  "bolt": 61671,
+  "sitemap": 61672,
+  "umbrella": 61673,
+  "paste": 61674,
+  "clipboard": 61674,
+  "lightbulb-o": 61675,
+  "exchange": 61676,
+  "cloud-download": 61677,
+  "cloud-upload": 61678,
+  "user-md": 61680,
+  "stethoscope": 61681,
+  "suitcase": 61682,
+  "bell-o": 61602,
+  "coffee": 61684,
+  "cutlery": 61685,
+  "file-text-o": 61686,
+  "building-o": 61687,
+  "hospital-o": 61688,
+  "ambulance": 61689,
+  "medkit": 61690,
+  "fighter-jet": 61691,
+  "beer": 61692,
+  "h-square": 61693,
+  "plus-square": 61694,
+  "angle-double-left": 61696,
+  "angle-double-right": 61697,
+  "angle-double-up": 61698,
+  "angle-double-down": 61699,
+  "angle-left": 61700,
+  "angle-right": 61701,
+  "angle-up": 61702,
+  "angle-down": 61703,
+  "desktop": 61704,
+  "laptop": 61705,
+  "tablet": 61706,
+  "mobile-phone": 61707,
+  "mobile": 61707,
+  "circle-o": 61708,
+  "quote-left": 61709,
+  "quote-right": 61710,
+  "spinner": 61712,
+  "circle": 61713,
+  "mail-reply": 61714,
+  "reply": 61714,
+  "github-alt": 61715,
+  "folder-o": 61716,
+  "folder-open-o": 61717,
+  "smile-o": 61720,
+  "frown-o": 61721,
+  "meh-o": 61722,
+  "gamepad": 61723,
+  "keyboard-o": 61724,
+  "flag-o": 61725,
+  "flag-checkered": 61726,
+  "terminal": 61728,
+  "code": 61729,
+  "mail-reply-all": 61730,
+  "reply-all": 61730,
+  "star-half-empty": 61731,
+  "star-half-full": 61731,
+  "star-half-o": 61731,
+  "location-arrow": 61732,
+  "crop": 61733,
+  "code-fork": 61734,
+  "unlink": 61735,
+  "chain-broken": 61735,
+  "question": 61736,
+  "info": 61737,
+  "exclamation": 61738,
+  "superscript": 61739,
+  "subscript": 61740,
+  "eraser": 61741,
+  "puzzle-piece": 61742,
+  "microphone": 61744,
+  "microphone-slash": 61745,
+  "shield": 61746,
+  "calendar-o": 61747,
+  "fire-extinguisher": 61748,
+  "rocket": 61749,
+  "maxcdn": 61750,
+  "chevron-circle-left": 61751,
+  "chevron-circle-right": 61752,
+  "chevron-circle-up": 61753,
+  "chevron-circle-down": 61754,
+  "html5": 61755,
+  "css3": 61756,
+  "anchor": 61757,
+  "unlock-alt": 61758,
+  "bullseye": 61760,
+  "ellipsis-h": 61761,
+  "ellipsis-v": 61762,
+  "rss-square": 61763,
+  "play-circle": 61764,
+  "ticket": 61765,
+  "minus-square": 61766,
+  "minus-square-o": 61767,
+  "level-up": 61768,
+  "level-down": 61769,
+  "check-square": 61770,
+  "pencil-square": 61771,
+  "external-link-square": 61772,
+  "share-square": 61773,
+  "compass": 61774,
+  "toggle-down": 61776,
+  "caret-square-o-down": 61776,
+  "toggle-up": 61777,
+  "caret-square-o-up": 61777,
+  "toggle-right": 61778,
+  "caret-square-o-right": 61778,
+  "euro": 61779,
+  "eur": 61779,
+  "gbp": 61780,
+  "dollar": 61781,
+  "usd": 61781,
+  "rupee": 61782,
+  "inr": 61782,
+  "cny": 61783,
+  "rmb": 61783,
+  "yen": 61783,
+  "jpy": 61783,
+  "ruble": 61784,
+  "rouble": 61784,
+  "rub": 61784,
+  "won": 61785,
+  "krw": 61785,
+  "bitcoin": 61786,
+  "btc": 61786,
+  "file": 61787,
+  "file-text": 61788,
+  "sort-alpha-asc": 61789,
+  "sort-alpha-desc": 61790,
+  "sort-amount-asc": 61792,
+  "sort-amount-desc": 61793,
+  "sort-numeric-asc": 61794,
+  "sort-numeric-desc": 61795,
+  "thumbs-up": 61796,
+  "thumbs-down": 61797,
+  "youtube-square": 61798,
+  "youtube": 61799,
+  "xing": 61800,
+  "xing-square": 61801,
+  "youtube-play": 61802,
+  "dropbox": 61803,
+  "stack-overflow": 61804,
+  "instagram": 61805,
+  "flickr": 61806,
+  "adn": 61808,
+  "bitbucket": 61809,
+  "bitbucket-square": 61810,
+  "tumblr": 61811,
+  "tumblr-square": 61812,
+  "long-arrow-down": 61813,
+  "long-arrow-up": 61814,
+  "long-arrow-left": 61815,
+  "long-arrow-right": 61816,
+  "apple": 61817,
+  "windows": 61818,
+  "android": 61819,
+  "linux": 61820,
+  "dribbble": 61821,
+  "skype": 61822,
+  "foursquare": 61824,
+  "trello": 61825,
+  "female": 61826,
+  "male": 61827,
+  "gittip": 61828,
+  "gratipay": 61828,
+  "sun-o": 61829,
+  "moon-o": 61830,
+  "archive": 61831,
+  "bug": 61832,
+  "vk": 61833,
+  "weibo": 61834,
+  "renren": 61835,
+  "pagelines": 61836,
+  "stack-exchange": 61837,
+  "arrow-circle-o-right": 61838,
+  "arrow-circle-o-left": 61840,
+  "toggle-left": 61841,
+  "caret-square-o-left": 61841,
+  "dot-circle-o": 61842,
+  "wheelchair": 61843,
+  "vimeo-square": 61844,
+  "turkish-lira": 61845,
+  "try": 61845,
+  "plus-square-o": 61846,
+  "space-shuttle": 61847,
+  "slack": 61848,
+  "envelope-square": 61849,
+  "wordpress": 61850,
+  "openid": 61851,
+  "institution": 61852,
+  "bank": 61852,
+  "university": 61852,
+  "mortar-board": 61853,
+  "graduation-cap": 61853,
+  "yahoo": 61854,
+  "google": 61856,
+  "reddit": 61857,
+  "reddit-square": 61858,
+  "stumbleupon-circle": 61859,
+  "stumbleupon": 61860,
+  "delicious": 61861,
+  "digg": 61862,
+  "pied-piper-pp": 61863,
+  "pied-piper-alt": 61864,
+  "drupal": 61865,
+  "joomla": 61866,
+  "language": 61867,
+  "fax": 61868,
+  "building": 61869,
+  "child": 61870,
+  "paw": 61872,
+  "spoon": 61873,
+  "cube": 61874,
+  "cubes": 61875,
+  "behance": 61876,
+  "behance-square": 61877,
+  "steam": 61878,
+  "steam-square": 61879,
+  "recycle": 61880,
+  "automobile": 61881,
+  "car": 61881,
+  "cab": 61882,
+  "taxi": 61882,
+  "tree": 61883,
+  "spotify": 61884,
+  "deviantart": 61885,
+  "soundcloud": 61886,
+  "database": 61888,
+  "file-pdf-o": 61889,
+  "file-word-o": 61890,
+  "file-excel-o": 61891,
+  "file-powerpoint-o": 61892,
+  "file-photo-o": 61893,
+  "file-picture-o": 61893,
+  "file-image-o": 61893,
+  "file-zip-o": 61894,
+  "file-archive-o": 61894,
+  "file-sound-o": 61895,
+  "file-audio-o": 61895,
+  "file-movie-o": 61896,
+  "file-video-o": 61896,
+  "file-code-o": 61897,
+  "vine": 61898,
+  "codepen": 61899,
+  "jsfiddle": 61900,
+  "life-bouy": 61901,
+  "life-buoy": 61901,
+  "life-saver": 61901,
+  "support": 61901,
+  "life-ring": 61901,
+  "circle-o-notch": 61902,
+  "ra": 61904,
+  "resistance": 61904,
+  "rebel": 61904,
+  "ge": 61905,
+  "empire": 61905,
+  "git-square": 61906,
+  "git": 61907,
+  "y-combinator-square": 61908,
+  "yc-square": 61908,
+  "hacker-news": 61908,
+  "tencent-weibo": 61909,
+  "qq": 61910,
+  "wechat": 61911,
+  "weixin": 61911,
+  "send": 61912,
+  "paper-plane": 61912,
+  "send-o": 61913,
+  "paper-plane-o": 61913,
+  "history": 61914,
+  "circle-thin": 61915,
+  "header": 61916,
+  "paragraph": 61917,
+  "sliders": 61918,
+  "share-alt": 61920,
+  "share-alt-square": 61921,
+  "bomb": 61922,
+  "soccer-ball-o": 61923,
+  "futbol-o": 61923,
+  "tty": 61924,
+  "binoculars": 61925,
+  "plug": 61926,
+  "slideshare": 61927,
+  "twitch": 61928,
+  "yelp": 61929,
+  "newspaper-o": 61930,
+  "wifi": 61931,
+  "calculator": 61932,
+  "paypal": 61933,
+  "google-wallet": 61934,
+  "cc-visa": 61936,
+  "cc-mastercard": 61937,
+  "cc-discover": 61938,
+  "cc-amex": 61939,
+  "cc-paypal": 61940,
+  "cc-stripe": 61941,
+  "bell-slash": 61942,
+  "bell-slash-o": 61943,
+  "trash": 61944,
+  "copyright": 61945,
+  "at": 61946,
+  "eyedropper": 61947,
+  "paint-brush": 61948,
+  "birthday-cake": 61949,
+  "area-chart": 61950,
+  "pie-chart": 61952,
+  "line-chart": 61953,
+  "lastfm": 61954,
+  "lastfm-square": 61955,
+  "toggle-off": 61956,
+  "toggle-on": 61957,
+  "bicycle": 61958,
+  "bus": 61959,
+  "ioxhost": 61960,
+  "angellist": 61961,
+  "cc": 61962,
+  "shekel": 61963,
+  "sheqel": 61963,
+  "ils": 61963,
+  "meanpath": 61964,
+  "buysellads": 61965,
+  "connectdevelop": 61966,
+  "dashcube": 61968,
+  "forumbee": 61969,
+  "leanpub": 61970,
+  "sellsy": 61971,
+  "shirtsinbulk": 61972,
+  "simplybuilt": 61973,
+  "skyatlas": 61974,
+  "cart-plus": 61975,
+  "cart-arrow-down": 61976,
+  "diamond": 61977,
+  "ship": 61978,
+  "user-secret": 61979,
+  "motorcycle": 61980,
+  "street-view": 61981,
+  "heartbeat": 61982,
+  "venus": 61985,
+  "mars": 61986,
+  "mercury": 61987,
+  "intersex": 61988,
+  "transgender": 61988,
+  "transgender-alt": 61989,
+  "venus-double": 61990,
+  "mars-double": 61991,
+  "venus-mars": 61992,
+  "mars-stroke": 61993,
+  "mars-stroke-v": 61994,
+  "mars-stroke-h": 61995,
+  "neuter": 61996,
+  "genderless": 61997,
+  "facebook-official": 62000,
+  "pinterest-p": 62001,
+  "whatsapp": 62002,
+  "server": 62003,
+  "user-plus": 62004,
+  "user-times": 62005,
+  "hotel": 62006,
+  "bed": 62006,
+  "viacoin": 62007,
+  "train": 62008,
+  "subway": 62009,
+  "medium": 62010,
+  "yc": 62011,
+  "y-combinator": 62011,
+  "optin-monster": 62012,
+  "opencart": 62013,
+  "expeditedssl": 62014,
+  "battery-4": 62016,
+  "battery": 62016,
+  "battery-full": 62016,
+  "battery-3": 62017,
+  "battery-three-quarters": 62017,
+  "battery-2": 62018,
+  "battery-half": 62018,
+  "battery-1": 62019,
+  "battery-quarter": 62019,
+  "battery-0": 62020,
+  "battery-empty": 62020,
+  "mouse-pointer": 62021,
+  "i-cursor": 62022,
+  "object-group": 62023,
+  "object-ungroup": 62024,
+  "sticky-note": 62025,
+  "sticky-note-o": 62026,
+  "cc-jcb": 62027,
+  "cc-diners-club": 62028,
+  "clone": 62029,
+  "balance-scale": 62030,
+  "hourglass-o": 62032,
+  "hourglass-1": 62033,
+  "hourglass-start": 62033,
+  "hourglass-2": 62034,
+  "hourglass-half": 62034,
+  "hourglass-3": 62035,
+  "hourglass-end": 62035,
+  "hourglass": 62036,
+  "hand-grab-o": 62037,
+  "hand-rock-o": 62037,
+  "hand-stop-o": 62038,
+  "hand-paper-o": 62038,
+  "hand-scissors-o": 62039,
+  "hand-lizard-o": 62040,
+  "hand-spock-o": 62041,
+  "hand-pointer-o": 62042,
+  "hand-peace-o": 62043,
+  "trademark": 62044,
+  "registered": 62045,
+  "creative-commons": 62046,
+  "gg": 62048,
+  "gg-circle": 62049,
+  "tripadvisor": 62050,
+  "odnoklassniki": 62051,
+  "odnoklassniki-square": 62052,
+  "get-pocket": 62053,
+  "wikipedia-w": 62054,
+  "safari": 62055,
+  "chrome": 62056,
+  "firefox": 62057,
+  "opera": 62058,
+  "internet-explorer": 62059,
+  "tv": 62060,
+  "television": 62060,
+  "contao": 62061,
+  "500px": 62062,
+  "amazon": 62064,
+  "calendar-plus-o": 62065,
+  "calendar-minus-o": 62066,
+  "calendar-times-o": 62067,
+  "calendar-check-o": 62068,
+  "industry": 62069,
+  "map-pin": 62070,
+  "map-signs": 62071,
+  "map-o": 62072,
+  "map": 62073,
+  "commenting": 62074,
+  "commenting-o": 62075,
+  "houzz": 62076,
+  "vimeo": 62077,
+  "black-tie": 62078,
+  "fonticons": 62080,
+  "reddit-alien": 62081,
+  "edge": 62082,
+  "credit-card-alt": 62083,
+  "codiepie": 62084,
+  "modx": 62085,
+  "fort-awesome": 62086,
+  "usb": 62087,
+  "product-hunt": 62088,
+  "mixcloud": 62089,
+  "scribd": 62090,
+  "pause-circle": 62091,
+  "pause-circle-o": 62092,
+  "stop-circle": 62093,
+  "stop-circle-o": 62094,
+  "shopping-bag": 62096,
+  "shopping-basket": 62097,
+  "hashtag": 62098,
+  "bluetooth": 62099,
+  "bluetooth-b": 62100,
+  "percent": 62101,
+  "gitlab": 62102,
+  "wpbeginner": 62103,
+  "wpforms": 62104,
+  "envira": 62105,
+  "universal-access": 62106,
+  "wheelchair-alt": 62107,
+  "question-circle-o": 62108,
+  "blind": 62109,
+  "audio-description": 62110,
+  "volume-control-phone": 62112,
+  "braille": 62113,
+  "assistive-listening-systems": 62114,
+  "asl-interpreting": 62115,
+  "american-sign-language-interpreting": 62115,
+  "deafness": 62116,
+  "hard-of-hearing": 62116,
+  "deaf": 62116,
+  "glide": 62117,
+  "glide-g": 62118,
+  "signing": 62119,
+  "sign-language": 62119,
+  "low-vision": 62120,
+  "viadeo": 62121,
+  "viadeo-square": 62122,
+  "snapchat": 62123,
+  "snapchat-ghost": 62124,
+  "snapchat-square": 62125,
+  "pied-piper": 62126,
+  "first-order": 62128,
+  "yoast": 62129,
+  "themeisle": 62130,
+  "google-plus-circle": 62131,
+  "google-plus-official": 62131,
+  "fa": 62132,
+  "font-awesome": 62132,
+  "handshake-o": 62133,
+  "envelope-open": 62134,
+  "envelope-open-o": 62135,
+  "linode": 62136,
+  "address-book": 62137,
+  "address-book-o": 62138,
+  "vcard": 62139,
+  "address-card": 62139,
+  "vcard-o": 62140,
+  "address-card-o": 62140,
+  "user-circle": 62141,
+  "user-circle-o": 62142,
+  "user-o": 62144,
+  "id-badge": 62145,
+  "drivers-license": 62146,
+  "id-card": 62146,
+  "drivers-license-o": 62147,
+  "id-card-o": 62147,
+  "quora": 62148,
+  "free-code-camp": 62149,
+  "telegram": 62150,
+  "thermometer-4": 62151,
+  "thermometer": 62151,
+  "thermometer-full": 62151,
+  "thermometer-3": 62152,
+  "thermometer-three-quarters": 62152,
+  "thermometer-2": 62153,
+  "thermometer-half": 62153,
+  "thermometer-1": 62154,
+  "thermometer-quarter": 62154,
+  "thermometer-0": 62155,
+  "thermometer-empty": 62155,
+  "shower": 62156,
+  "bathtub": 62157,
+  "s15": 62157,
+  "bath": 62157,
+  "podcast": 62158,
+  "window-maximize": 62160,
+  "window-minimize": 62161,
+  "window-restore": 62162,
+  "times-rectangle": 62163,
+  "window-close": 62163,
+  "times-rectangle-o": 62164,
+  "window-close-o": 62164,
+  "bandcamp": 62165,
+  "grav": 62166,
+  "etsy": 62167,
+  "imdb": 62168,
+  "ravelry": 62169,
+  "eercast": 62170,
+  "microchip": 62171,
+  "snowflake-o": 62172,
+  "superpowers": 62173,
+  "wpexplorer": 62174,
+  "meetup": 62176
+}

+ 1440 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_fontawesome5free.json

@@ -0,0 +1,1440 @@
+{
+  "500px": 62062,
+  "accessible-icon": 62312,
+  "accusoft": 62313,
+  "acquisitions-incorporated": 63151,
+  "ad": 63041,
+  "address-book": 62137,
+  "address-card": 62139,
+  "adjust": 61506,
+  "adn": 61808,
+  "adobe": 63352,
+  "adversal": 62314,
+  "affiliatetheme": 62315,
+  "air-freshener": 62928,
+  "airbnb": 63540,
+  "algolia": 62316,
+  "align-center": 61495,
+  "align-justify": 61497,
+  "align-left": 61494,
+  "align-right": 61496,
+  "alipay": 63042,
+  "allergies": 62561,
+  "amazon": 62064,
+  "amazon-pay": 62508,
+  "ambulance": 61689,
+  "american-sign-language-interpreting": 62115,
+  "amilia": 62317,
+  "anchor": 61757,
+  "android": 61819,
+  "angellist": 61961,
+  "angle-double-down": 61699,
+  "angle-double-left": 61696,
+  "angle-double-right": 61697,
+  "angle-double-up": 61698,
+  "angle-down": 61703,
+  "angle-left": 61700,
+  "angle-right": 61701,
+  "angle-up": 61702,
+  "angry": 62806,
+  "angrycreative": 62318,
+  "angular": 62496,
+  "ankh": 63044,
+  "app-store": 62319,
+  "app-store-ios": 62320,
+  "apper": 62321,
+  "apple": 61817,
+  "apple-alt": 62929,
+  "apple-pay": 62485,
+  "archive": 61831,
+  "archway": 62807,
+  "arrow-alt-circle-down": 62296,
+  "arrow-alt-circle-left": 62297,
+  "arrow-alt-circle-right": 62298,
+  "arrow-alt-circle-up": 62299,
+  "arrow-circle-down": 61611,
+  "arrow-circle-left": 61608,
+  "arrow-circle-right": 61609,
+  "arrow-circle-up": 61610,
+  "arrow-down": 61539,
+  "arrow-left": 61536,
+  "arrow-right": 61537,
+  "arrow-up": 61538,
+  "arrows-alt": 61618,
+  "arrows-alt-h": 62263,
+  "arrows-alt-v": 62264,
+  "artstation": 63354,
+  "assistive-listening-systems": 62114,
+  "asterisk": 61545,
+  "asymmetrik": 62322,
+  "at": 61946,
+  "atlas": 62808,
+  "atlassian": 63355,
+  "atom": 62930,
+  "audible": 62323,
+  "audio-description": 62110,
+  "autoprefixer": 62492,
+  "avianex": 62324,
+  "aviato": 62497,
+  "award": 62809,
+  "aws": 62325,
+  "baby": 63356,
+  "baby-carriage": 63357,
+  "backspace": 62810,
+  "backward": 61514,
+  "bacon": 63461,
+  "bahai": 63078,
+  "balance-scale": 62030,
+  "balance-scale-left": 62741,
+  "balance-scale-right": 62742,
+  "ban": 61534,
+  "band-aid": 62562,
+  "bandcamp": 62165,
+  "barcode": 61482,
+  "bars": 61641,
+  "baseball-ball": 62515,
+  "basketball-ball": 62516,
+  "bath": 62157,
+  "battery-empty": 62020,
+  "battery-full": 62016,
+  "battery-half": 62018,
+  "battery-quarter": 62019,
+  "battery-three-quarters": 62017,
+  "battle-net": 63541,
+  "bed": 62006,
+  "beer": 61692,
+  "behance": 61876,
+  "behance-square": 61877,
+  "bell": 61683,
+  "bell-slash": 61942,
+  "bezier-curve": 62811,
+  "bible": 63047,
+  "bicycle": 61958,
+  "biking": 63562,
+  "bimobject": 62328,
+  "binoculars": 61925,
+  "biohazard": 63360,
+  "birthday-cake": 61949,
+  "bitbucket": 61809,
+  "bitcoin": 62329,
+  "bity": 62330,
+  "black-tie": 62078,
+  "blackberry": 62331,
+  "blender": 62743,
+  "blender-phone": 63158,
+  "blind": 62109,
+  "blog": 63361,
+  "blogger": 62332,
+  "blogger-b": 62333,
+  "bluetooth": 62099,
+  "bluetooth-b": 62100,
+  "bold": 61490,
+  "bolt": 61671,
+  "bomb": 61922,
+  "bone": 62935,
+  "bong": 62812,
+  "book": 61485,
+  "book-dead": 63159,
+  "book-medical": 63462,
+  "book-open": 62744,
+  "book-reader": 62938,
+  "bookmark": 61486,
+  "bootstrap": 63542,
+  "border-all": 63564,
+  "border-none": 63568,
+  "border-style": 63571,
+  "bowling-ball": 62518,
+  "box": 62566,
+  "box-open": 62622,
+  "box-tissue": 63835,
+  "boxes": 62568,
+  "braille": 62113,
+  "brain": 62940,
+  "bread-slice": 63468,
+  "briefcase": 61617,
+  "briefcase-medical": 62569,
+  "broadcast-tower": 62745,
+  "broom": 62746,
+  "brush": 62813,
+  "btc": 61786,
+  "buffer": 63543,
+  "bug": 61832,
+  "building": 61869,
+  "bullhorn": 61601,
+  "bullseye": 61760,
+  "burn": 62570,
+  "buromobelexperte": 62335,
+  "bus": 61959,
+  "bus-alt": 62814,
+  "business-time": 63050,
+  "buy-n-large": 63654,
+  "buysellads": 61965,
+  "calculator": 61932,
+  "calendar": 61747,
+  "calendar-alt": 61555,
+  "calendar-check": 62068,
+  "calendar-day": 63363,
+  "calendar-minus": 62066,
+  "calendar-plus": 62065,
+  "calendar-times": 62067,
+  "calendar-week": 63364,
+  "camera": 61488,
+  "camera-retro": 61571,
+  "campground": 63163,
+  "canadian-maple-leaf": 63365,
+  "candy-cane": 63366,
+  "cannabis": 62815,
+  "capsules": 62571,
+  "car": 61881,
+  "car-alt": 62942,
+  "car-battery": 62943,
+  "car-crash": 62945,
+  "car-side": 62948,
+  "caravan": 63743,
+  "caret-down": 61655,
+  "caret-left": 61657,
+  "caret-right": 61658,
+  "caret-square-down": 61776,
+  "caret-square-left": 61841,
+  "caret-square-right": 61778,
+  "caret-square-up": 61777,
+  "caret-up": 61656,
+  "carrot": 63367,
+  "cart-arrow-down": 61976,
+  "cart-plus": 61975,
+  "cash-register": 63368,
+  "cat": 63166,
+  "cc-amazon-pay": 62509,
+  "cc-amex": 61939,
+  "cc-apple-pay": 62486,
+  "cc-diners-club": 62028,
+  "cc-discover": 61938,
+  "cc-jcb": 62027,
+  "cc-mastercard": 61937,
+  "cc-paypal": 61940,
+  "cc-stripe": 61941,
+  "cc-visa": 61936,
+  "centercode": 62336,
+  "centos": 63369,
+  "certificate": 61603,
+  "chair": 63168,
+  "chalkboard": 62747,
+  "chalkboard-teacher": 62748,
+  "charging-station": 62951,
+  "chart-area": 61950,
+  "chart-bar": 61568,
+  "chart-line": 61953,
+  "chart-pie": 61952,
+  "check": 61452,
+  "check-circle": 61528,
+  "check-double": 62816,
+  "check-square": 61770,
+  "cheese": 63471,
+  "chess": 62521,
+  "chess-bishop": 62522,
+  "chess-board": 62524,
+  "chess-king": 62527,
+  "chess-knight": 62529,
+  "chess-pawn": 62531,
+  "chess-queen": 62533,
+  "chess-rook": 62535,
+  "chevron-circle-down": 61754,
+  "chevron-circle-left": 61751,
+  "chevron-circle-right": 61752,
+  "chevron-circle-up": 61753,
+  "chevron-down": 61560,
+  "chevron-left": 61523,
+  "chevron-right": 61524,
+  "chevron-up": 61559,
+  "child": 61870,
+  "chrome": 62056,
+  "chromecast": 63544,
+  "church": 62749,
+  "circle": 61713,
+  "circle-notch": 61902,
+  "city": 63055,
+  "clinic-medical": 63474,
+  "clipboard": 62248,
+  "clipboard-check": 62572,
+  "clipboard-list": 62573,
+  "clock": 61463,
+  "clone": 62029,
+  "closed-captioning": 61962,
+  "cloud": 61634,
+  "cloud-download-alt": 62337,
+  "cloud-meatball": 63291,
+  "cloud-moon": 63171,
+  "cloud-moon-rain": 63292,
+  "cloud-rain": 63293,
+  "cloud-showers-heavy": 63296,
+  "cloud-sun": 63172,
+  "cloud-sun-rain": 63299,
+  "cloud-upload-alt": 62338,
+  "cloudscale": 62339,
+  "cloudsmith": 62340,
+  "cloudversify": 62341,
+  "cocktail": 62817,
+  "code": 61729,
+  "code-branch": 61734,
+  "codepen": 61899,
+  "codiepie": 62084,
+  "coffee": 61684,
+  "cog": 61459,
+  "cogs": 61573,
+  "coins": 62750,
+  "columns": 61659,
+  "comment": 61557,
+  "comment-alt": 62074,
+  "comment-dollar": 63057,
+  "comment-dots": 62637,
+  "comment-medical": 63477,
+  "comment-slash": 62643,
+  "comments": 61574,
+  "comments-dollar": 63059,
+  "compact-disc": 62751,
+  "compass": 61774,
+  "compress": 61542,
+  "compress-alt": 62498,
+  "compress-arrows-alt": 63372,
+  "concierge-bell": 62818,
+  "confluence": 63373,
+  "connectdevelop": 61966,
+  "contao": 62061,
+  "cookie": 62819,
+  "cookie-bite": 62820,
+  "copy": 61637,
+  "copyright": 61945,
+  "cotton-bureau": 63646,
+  "couch": 62648,
+  "cpanel": 62344,
+  "creative-commons": 62046,
+  "creative-commons-by": 62695,
+  "creative-commons-nc": 62696,
+  "creative-commons-nc-eu": 62697,
+  "creative-commons-nc-jp": 62698,
+  "creative-commons-nd": 62699,
+  "creative-commons-pd": 62700,
+  "creative-commons-pd-alt": 62701,
+  "creative-commons-remix": 62702,
+  "creative-commons-sa": 62703,
+  "creative-commons-sampling": 62704,
+  "creative-commons-sampling-plus": 62705,
+  "creative-commons-share": 62706,
+  "creative-commons-zero": 62707,
+  "credit-card": 61597,
+  "critical-role": 63177,
+  "crop": 61733,
+  "crop-alt": 62821,
+  "cross": 63060,
+  "crosshairs": 61531,
+  "crow": 62752,
+  "crown": 62753,
+  "crutch": 63479,
+  "css3": 61756,
+  "css3-alt": 62347,
+  "cube": 61874,
+  "cubes": 61875,
+  "cut": 61636,
+  "cuttlefish": 62348,
+  "d-and-d": 62349,
+  "d-and-d-beyond": 63178,
+  "dailymotion": 63826,
+  "dashcube": 61968,
+  "database": 61888,
+  "deaf": 62116,
+  "delicious": 61861,
+  "democrat": 63303,
+  "deploydog": 62350,
+  "deskpro": 62351,
+  "desktop": 61704,
+  "dev": 63180,
+  "deviantart": 61885,
+  "dharmachakra": 63061,
+  "dhl": 63376,
+  "diagnoses": 62576,
+  "diaspora": 63377,
+  "dice": 62754,
+  "dice-d20": 63183,
+  "dice-d6": 63185,
+  "dice-five": 62755,
+  "dice-four": 62756,
+  "dice-one": 62757,
+  "dice-six": 62758,
+  "dice-three": 62759,
+  "dice-two": 62760,
+  "digg": 61862,
+  "digital-ocean": 62353,
+  "digital-tachograph": 62822,
+  "directions": 62955,
+  "discord": 62354,
+  "discourse": 62355,
+  "disease": 63482,
+  "divide": 62761,
+  "dizzy": 62823,
+  "dna": 62577,
+  "dochub": 62356,
+  "docker": 62357,
+  "dog": 63187,
+  "dollar-sign": 61781,
+  "dolly": 62578,
+  "dolly-flatbed": 62580,
+  "donate": 62649,
+  "door-closed": 62762,
+  "door-open": 62763,
+  "dot-circle": 61842,
+  "dove": 62650,
+  "download": 61465,
+  "draft2digital": 62358,
+  "drafting-compass": 62824,
+  "dragon": 63189,
+  "draw-polygon": 62958,
+  "dribbble": 61821,
+  "dribbble-square": 62359,
+  "dropbox": 61803,
+  "drum": 62825,
+  "drum-steelpan": 62826,
+  "drumstick-bite": 63191,
+  "drupal": 61865,
+  "dumbbell": 62539,
+  "dumpster": 63379,
+  "dumpster-fire": 63380,
+  "dungeon": 63193,
+  "dyalog": 62361,
+  "earlybirds": 62362,
+  "ebay": 62708,
+  "edge": 62082,
+  "edit": 61508,
+  "egg": 63483,
+  "eject": 61522,
+  "elementor": 62512,
+  "ellipsis-h": 61761,
+  "ellipsis-v": 61762,
+  "ello": 62961,
+  "ember": 62499,
+  "empire": 61905,
+  "envelope": 61664,
+  "envelope-open": 62134,
+  "envelope-open-text": 63064,
+  "envelope-square": 61849,
+  "envira": 62105,
+  "equals": 62764,
+  "eraser": 61741,
+  "erlang": 62365,
+  "ethereum": 62510,
+  "ethernet": 63382,
+  "etsy": 62167,
+  "euro-sign": 61779,
+  "evernote": 63545,
+  "exchange-alt": 62306,
+  "exclamation": 61738,
+  "exclamation-circle": 61546,
+  "exclamation-triangle": 61553,
+  "expand": 61541,
+  "expand-alt": 62500,
+  "expand-arrows-alt": 62238,
+  "expeditedssl": 62014,
+  "external-link-alt": 62301,
+  "external-link-square-alt": 62304,
+  "eye": 61550,
+  "eye-dropper": 61947,
+  "eye-slash": 61552,
+  "facebook": 61594,
+  "facebook-f": 62366,
+  "facebook-messenger": 62367,
+  "facebook-square": 61570,
+  "fan": 63587,
+  "fantasy-flight-games": 63196,
+  "fast-backward": 61513,
+  "fast-forward": 61520,
+  "faucet": 63749,
+  "fax": 61868,
+  "feather": 62765,
+  "feather-alt": 62827,
+  "fedex": 63383,
+  "fedora": 63384,
+  "female": 61826,
+  "fighter-jet": 61691,
+  "figma": 63385,
+  "file": 61787,
+  "file-alt": 61788,
+  "file-archive": 61894,
+  "file-audio": 61895,
+  "file-code": 61897,
+  "file-contract": 62828,
+  "file-csv": 63197,
+  "file-download": 62829,
+  "file-excel": 61891,
+  "file-export": 62830,
+  "file-image": 61893,
+  "file-import": 62831,
+  "file-invoice": 62832,
+  "file-invoice-dollar": 62833,
+  "file-medical": 62583,
+  "file-medical-alt": 62584,
+  "file-pdf": 61889,
+  "file-powerpoint": 61892,
+  "file-prescription": 62834,
+  "file-signature": 62835,
+  "file-upload": 62836,
+  "file-video": 61896,
+  "file-word": 61890,
+  "fill": 62837,
+  "fill-drip": 62838,
+  "film": 61448,
+  "filter": 61616,
+  "fingerprint": 62839,
+  "fire": 61549,
+  "fire-alt": 63460,
+  "fire-extinguisher": 61748,
+  "firefox": 62057,
+  "firefox-browser": 63751,
+  "first-aid": 62585,
+  "first-order": 62128,
+  "first-order-alt": 62730,
+  "firstdraft": 62369,
+  "fish": 62840,
+  "fist-raised": 63198,
+  "flag": 61476,
+  "flag-checkered": 61726,
+  "flag-usa": 63309,
+  "flask": 61635,
+  "flickr": 61806,
+  "flipboard": 62541,
+  "flushed": 62841,
+  "fly": 62487,
+  "folder": 61563,
+  "folder-minus": 63069,
+  "folder-open": 61564,
+  "folder-plus": 63070,
+  "font": 61489,
+  "font-awesome": 62132,
+  "font-awesome-alt": 62300,
+  "font-awesome-flag": 62501,
+  "font-awesome-logo-full": 62694,
+  "fonticons": 62080,
+  "fonticons-fi": 62370,
+  "football-ball": 62542,
+  "fort-awesome": 62086,
+  "fort-awesome-alt": 62371,
+  "forumbee": 61969,
+  "forward": 61518,
+  "foursquare": 61824,
+  "free-code-camp": 62149,
+  "freebsd": 62372,
+  "frog": 62766,
+  "frown": 61721,
+  "frown-open": 62842,
+  "fulcrum": 62731,
+  "funnel-dollar": 63074,
+  "futbol": 61923,
+  "galactic-republic": 62732,
+  "galactic-senate": 62733,
+  "gamepad": 61723,
+  "gas-pump": 62767,
+  "gavel": 61667,
+  "gem": 62373,
+  "genderless": 61997,
+  "get-pocket": 62053,
+  "gg": 62048,
+  "gg-circle": 62049,
+  "ghost": 63202,
+  "gift": 61547,
+  "gifts": 63388,
+  "git": 61907,
+  "git-alt": 63553,
+  "git-square": 61906,
+  "github": 61595,
+  "github-alt": 61715,
+  "github-square": 61586,
+  "gitkraken": 62374,
+  "gitlab": 62102,
+  "gitter": 62502,
+  "glass-cheers": 63391,
+  "glass-martini": 61440,
+  "glass-martini-alt": 62843,
+  "glass-whiskey": 63392,
+  "glasses": 62768,
+  "glide": 62117,
+  "glide-g": 62118,
+  "globe": 61612,
+  "globe-africa": 62844,
+  "globe-americas": 62845,
+  "globe-asia": 62846,
+  "globe-europe": 63394,
+  "gofore": 62375,
+  "golf-ball": 62544,
+  "goodreads": 62376,
+  "goodreads-g": 62377,
+  "google": 61856,
+  "google-drive": 62378,
+  "google-play": 62379,
+  "google-plus": 62131,
+  "google-plus-g": 61653,
+  "google-plus-square": 61652,
+  "google-wallet": 61934,
+  "gopuram": 63076,
+  "graduation-cap": 61853,
+  "gratipay": 61828,
+  "grav": 62166,
+  "greater-than": 62769,
+  "greater-than-equal": 62770,
+  "grimace": 62847,
+  "grin": 62848,
+  "grin-alt": 62849,
+  "grin-beam": 62850,
+  "grin-beam-sweat": 62851,
+  "grin-hearts": 62852,
+  "grin-squint": 62853,
+  "grin-squint-tears": 62854,
+  "grin-stars": 62855,
+  "grin-tears": 62856,
+  "grin-tongue": 62857,
+  "grin-tongue-squint": 62858,
+  "grin-tongue-wink": 62859,
+  "grin-wink": 62860,
+  "grip-horizontal": 62861,
+  "grip-lines": 63396,
+  "grip-lines-vertical": 63397,
+  "grip-vertical": 62862,
+  "gripfire": 62380,
+  "grunt": 62381,
+  "guitar": 63398,
+  "gulp": 62382,
+  "h-square": 61693,
+  "hacker-news": 61908,
+  "hacker-news-square": 62383,
+  "hackerrank": 62967,
+  "hamburger": 63493,
+  "hammer": 63203,
+  "hamsa": 63077,
+  "hand-holding": 62653,
+  "hand-holding-heart": 62654,
+  "hand-holding-medical": 63836,
+  "hand-holding-usd": 62656,
+  "hand-holding-water": 62657,
+  "hand-lizard": 62040,
+  "hand-middle-finger": 63494,
+  "hand-paper": 62038,
+  "hand-peace": 62043,
+  "hand-point-down": 61607,
+  "hand-point-left": 61605,
+  "hand-point-right": 61604,
+  "hand-point-up": 61606,
+  "hand-pointer": 62042,
+  "hand-rock": 62037,
+  "hand-scissors": 62039,
+  "hand-sparkles": 63837,
+  "hand-spock": 62041,
+  "hands": 62658,
+  "hands-helping": 62660,
+  "hands-wash": 63838,
+  "handshake": 62133,
+  "handshake-alt-slash": 63839,
+  "handshake-slash": 63840,
+  "hanukiah": 63206,
+  "hard-hat": 63495,
+  "hashtag": 62098,
+  "hat-cowboy": 63680,
+  "hat-cowboy-side": 63681,
+  "hat-wizard": 63208,
+  "hdd": 61600,
+  "head-side-cough": 63841,
+  "head-side-cough-slash": 63842,
+  "head-side-mask": 63843,
+  "head-side-virus": 63844,
+  "heading": 61916,
+  "headphones": 61477,
+  "headphones-alt": 62863,
+  "headset": 62864,
+  "heart": 61444,
+  "heart-broken": 63401,
+  "heartbeat": 61982,
+  "helicopter": 62771,
+  "highlighter": 62865,
+  "hiking": 63212,
+  "hippo": 63213,
+  "hips": 62546,
+  "hire-a-helper": 62384,
+  "history": 61914,
+  "hockey-puck": 62547,
+  "holly-berry": 63402,
+  "home": 61461,
+  "hooli": 62503,
+  "hornbill": 62866,
+  "horse": 63216,
+  "horse-head": 63403,
+  "hospital": 61688,
+  "hospital-alt": 62589,
+  "hospital-symbol": 62590,
+  "hospital-user": 63501,
+  "hot-tub": 62867,
+  "hotdog": 63503,
+  "hotel": 62868,
+  "hotjar": 62385,
+  "hourglass": 62036,
+  "hourglass-end": 62035,
+  "hourglass-half": 62034,
+  "hourglass-start": 62033,
+  "house-damage": 63217,
+  "house-user": 63845,
+  "houzz": 62076,
+  "hryvnia": 63218,
+  "html5": 61755,
+  "hubspot": 62386,
+  "i-cursor": 62022,
+  "ice-cream": 63504,
+  "icicles": 63405,
+  "icons": 63597,
+  "id-badge": 62145,
+  "id-card": 62146,
+  "id-card-alt": 62591,
+  "ideal": 63763,
+  "igloo": 63406,
+  "image": 61502,
+  "images": 62210,
+  "imdb": 62168,
+  "inbox": 61468,
+  "indent": 61500,
+  "industry": 62069,
+  "infinity": 62772,
+  "info": 61737,
+  "info-circle": 61530,
+  "instagram": 61805,
+  "instagram-square": 63829,
+  "intercom": 63407,
+  "internet-explorer": 62059,
+  "invision": 63408,
+  "ioxhost": 61960,
+  "italic": 61491,
+  "itch-io": 63546,
+  "itunes": 62388,
+  "itunes-note": 62389,
+  "java": 62692,
+  "jedi": 63081,
+  "jedi-order": 62734,
+  "jenkins": 62390,
+  "jira": 63409,
+  "joget": 62391,
+  "joint": 62869,
+  "joomla": 61866,
+  "journal-whills": 63082,
+  "js": 62392,
+  "js-square": 62393,
+  "jsfiddle": 61900,
+  "kaaba": 63083,
+  "kaggle": 62970,
+  "key": 61572,
+  "keybase": 62709,
+  "keyboard": 61724,
+  "keycdn": 62394,
+  "khanda": 63085,
+  "kickstarter": 62395,
+  "kickstarter-k": 62396,
+  "kiss": 62870,
+  "kiss-beam": 62871,
+  "kiss-wink-heart": 62872,
+  "kiwi-bird": 62773,
+  "korvue": 62511,
+  "landmark": 63087,
+  "language": 61867,
+  "laptop": 61705,
+  "laptop-code": 62972,
+  "laptop-house": 63846,
+  "laptop-medical": 63506,
+  "laravel": 62397,
+  "lastfm": 61954,
+  "lastfm-square": 61955,
+  "laugh": 62873,
+  "laugh-beam": 62874,
+  "laugh-squint": 62875,
+  "laugh-wink": 62876,
+  "layer-group": 62973,
+  "leaf": 61548,
+  "leanpub": 61970,
+  "lemon": 61588,
+  "less": 62493,
+  "less-than": 62774,
+  "less-than-equal": 62775,
+  "level-down-alt": 62398,
+  "level-up-alt": 62399,
+  "life-ring": 61901,
+  "lightbulb": 61675,
+  "line": 62400,
+  "link": 61633,
+  "linkedin": 61580,
+  "linkedin-in": 61665,
+  "linode": 62136,
+  "linux": 61820,
+  "lira-sign": 61845,
+  "list": 61498,
+  "list-alt": 61474,
+  "list-ol": 61643,
+  "list-ul": 61642,
+  "location-arrow": 61732,
+  "lock": 61475,
+  "lock-open": 62401,
+  "long-arrow-alt-down": 62217,
+  "long-arrow-alt-left": 62218,
+  "long-arrow-alt-right": 62219,
+  "long-arrow-alt-up": 62220,
+  "low-vision": 62120,
+  "luggage-cart": 62877,
+  "lungs": 62980,
+  "lungs-virus": 63847,
+  "lyft": 62403,
+  "magento": 62404,
+  "magic": 61648,
+  "magnet": 61558,
+  "mail-bulk": 63092,
+  "mailchimp": 62878,
+  "male": 61827,
+  "mandalorian": 62735,
+  "map": 62073,
+  "map-marked": 62879,
+  "map-marked-alt": 62880,
+  "map-marker": 61505,
+  "map-marker-alt": 62405,
+  "map-pin": 62070,
+  "map-signs": 62071,
+  "markdown": 62991,
+  "marker": 62881,
+  "mars": 61986,
+  "mars-double": 61991,
+  "mars-stroke": 61993,
+  "mars-stroke-h": 61995,
+  "mars-stroke-v": 61994,
+  "mask": 63226,
+  "mastodon": 62710,
+  "maxcdn": 61750,
+  "mdb": 63690,
+  "medal": 62882,
+  "medapps": 62406,
+  "medium": 62010,
+  "medium-m": 62407,
+  "medkit": 61690,
+  "medrt": 62408,
+  "meetup": 62176,
+  "megaport": 62883,
+  "meh": 61722,
+  "meh-blank": 62884,
+  "meh-rolling-eyes": 62885,
+  "memory": 62776,
+  "mendeley": 63411,
+  "menorah": 63094,
+  "mercury": 61987,
+  "meteor": 63315,
+  "microblog": 63770,
+  "microchip": 62171,
+  "microphone": 61744,
+  "microphone-alt": 62409,
+  "microphone-alt-slash": 62777,
+  "microphone-slash": 61745,
+  "microscope": 62992,
+  "microsoft": 62410,
+  "minus": 61544,
+  "minus-circle": 61526,
+  "minus-square": 61766,
+  "mitten": 63413,
+  "mix": 62411,
+  "mixcloud": 62089,
+  "mixer": 63830,
+  "mizuni": 62412,
+  "mobile": 61707,
+  "mobile-alt": 62413,
+  "modx": 62085,
+  "monero": 62416,
+  "money-bill": 61654,
+  "money-bill-alt": 62417,
+  "money-bill-wave": 62778,
+  "money-bill-wave-alt": 62779,
+  "money-check": 62780,
+  "money-check-alt": 62781,
+  "monument": 62886,
+  "moon": 61830,
+  "mortar-pestle": 62887,
+  "mosque": 63096,
+  "motorcycle": 61980,
+  "mountain": 63228,
+  "mouse": 63692,
+  "mouse-pointer": 62021,
+  "mug-hot": 63414,
+  "music": 61441,
+  "napster": 62418,
+  "neos": 62994,
+  "network-wired": 63231,
+  "neuter": 61996,
+  "newspaper": 61930,
+  "nimblr": 62888,
+  "node": 62489,
+  "node-js": 62419,
+  "not-equal": 62782,
+  "notes-medical": 62593,
+  "npm": 62420,
+  "ns8": 62421,
+  "nutritionix": 62422,
+  "object-group": 62023,
+  "object-ungroup": 62024,
+  "odnoklassniki": 62051,
+  "odnoklassniki-square": 62052,
+  "oil-can": 62995,
+  "old-republic": 62736,
+  "om": 63097,
+  "opencart": 62013,
+  "openid": 61851,
+  "opera": 62058,
+  "optin-monster": 62012,
+  "orcid": 63698,
+  "osi": 62490,
+  "otter": 63232,
+  "outdent": 61499,
+  "page4": 62423,
+  "pagelines": 61836,
+  "pager": 63509,
+  "paint-brush": 61948,
+  "paint-roller": 62890,
+  "palette": 62783,
+  "palfed": 62424,
+  "pallet": 62594,
+  "paper-plane": 61912,
+  "paperclip": 61638,
+  "parachute-box": 62669,
+  "paragraph": 61917,
+  "parking": 62784,
+  "passport": 62891,
+  "pastafarianism": 63099,
+  "paste": 61674,
+  "patreon": 62425,
+  "pause": 61516,
+  "pause-circle": 62091,
+  "paw": 61872,
+  "paypal": 61933,
+  "peace": 63100,
+  "pen": 62212,
+  "pen-alt": 62213,
+  "pen-fancy": 62892,
+  "pen-nib": 62893,
+  "pen-square": 61771,
+  "pencil-alt": 62211,
+  "pencil-ruler": 62894,
+  "penny-arcade": 63236,
+  "people-arrows": 63848,
+  "people-carry": 62670,
+  "pepper-hot": 63510,
+  "percent": 62101,
+  "percentage": 62785,
+  "periscope": 62426,
+  "person-booth": 63318,
+  "phabricator": 62427,
+  "phoenix-framework": 62428,
+  "phoenix-squadron": 62737,
+  "phone": 61589,
+  "phone-alt": 63609,
+  "phone-slash": 62429,
+  "phone-square": 61592,
+  "phone-square-alt": 63611,
+  "phone-volume": 62112,
+  "photo-video": 63612,
+  "php": 62551,
+  "pied-piper": 62126,
+  "pied-piper-alt": 61864,
+  "pied-piper-hat": 62693,
+  "pied-piper-pp": 61863,
+  "pied-piper-square": 63774,
+  "piggy-bank": 62675,
+  "pills": 62596,
+  "pinterest": 61650,
+  "pinterest-p": 62001,
+  "pinterest-square": 61651,
+  "pizza-slice": 63512,
+  "place-of-worship": 63103,
+  "plane": 61554,
+  "plane-arrival": 62895,
+  "plane-departure": 62896,
+  "plane-slash": 63849,
+  "play": 61515,
+  "play-circle": 61764,
+  "playstation": 62431,
+  "plug": 61926,
+  "plus": 61543,
+  "plus-circle": 61525,
+  "plus-square": 61694,
+  "podcast": 62158,
+  "poll": 63105,
+  "poll-h": 63106,
+  "poo": 62206,
+  "poo-storm": 63322,
+  "poop": 63001,
+  "portrait": 62432,
+  "pound-sign": 61780,
+  "power-off": 61457,
+  "pray": 63107,
+  "praying-hands": 63108,
+  "prescription": 62897,
+  "prescription-bottle": 62597,
+  "prescription-bottle-alt": 62598,
+  "print": 61487,
+  "procedures": 62599,
+  "product-hunt": 62088,
+  "project-diagram": 62786,
+  "pump-medical": 63850,
+  "pump-soap": 63851,
+  "pushed": 62433,
+  "puzzle-piece": 61742,
+  "python": 62434,
+  "qq": 61910,
+  "qrcode": 61481,
+  "question": 61736,
+  "question-circle": 61529,
+  "quidditch": 62552,
+  "quinscape": 62553,
+  "quora": 62148,
+  "quote-left": 61709,
+  "quote-right": 61710,
+  "quran": 63111,
+  "r-project": 62711,
+  "radiation": 63417,
+  "radiation-alt": 63418,
+  "rainbow": 63323,
+  "random": 61556,
+  "raspberry-pi": 63419,
+  "ravelry": 62169,
+  "react": 62491,
+  "reacteurope": 63325,
+  "readme": 62677,
+  "rebel": 61904,
+  "receipt": 62787,
+  "record-vinyl": 63705,
+  "recycle": 61880,
+  "red-river": 62435,
+  "reddit": 61857,
+  "reddit-alien": 62081,
+  "reddit-square": 61858,
+  "redhat": 63420,
+  "redo": 61470,
+  "redo-alt": 62201,
+  "registered": 62045,
+  "remove-format": 63613,
+  "renren": 61835,
+  "reply": 62437,
+  "reply-all": 61730,
+  "replyd": 62438,
+  "republican": 63326,
+  "researchgate": 62712,
+  "resolving": 62439,
+  "restroom": 63421,
+  "retweet": 61561,
+  "rev": 62898,
+  "ribbon": 62678,
+  "ring": 63243,
+  "road": 61464,
+  "robot": 62788,
+  "rocket": 61749,
+  "rocketchat": 62440,
+  "rockrms": 62441,
+  "route": 62679,
+  "rss": 61598,
+  "rss-square": 61763,
+  "ruble-sign": 61784,
+  "ruler": 62789,
+  "ruler-combined": 62790,
+  "ruler-horizontal": 62791,
+  "ruler-vertical": 62792,
+  "running": 63244,
+  "rupee-sign": 61782,
+  "sad-cry": 62899,
+  "sad-tear": 62900,
+  "safari": 62055,
+  "salesforce": 63547,
+  "sass": 62494,
+  "satellite": 63423,
+  "satellite-dish": 63424,
+  "save": 61639,
+  "schlix": 62442,
+  "school": 62793,
+  "screwdriver": 62794,
+  "scribd": 62090,
+  "scroll": 63246,
+  "sd-card": 63426,
+  "search": 61442,
+  "search-dollar": 63112,
+  "search-location": 63113,
+  "search-minus": 61456,
+  "search-plus": 61454,
+  "searchengin": 62443,
+  "seedling": 62680,
+  "sellcast": 62170,
+  "sellsy": 61971,
+  "server": 62003,
+  "servicestack": 62444,
+  "shapes": 63007,
+  "share": 61540,
+  "share-alt": 61920,
+  "share-alt-square": 61921,
+  "share-square": 61773,
+  "shekel-sign": 61963,
+  "shield-alt": 62445,
+  "shield-virus": 63852,
+  "ship": 61978,
+  "shipping-fast": 62603,
+  "shirtsinbulk": 61972,
+  "shoe-prints": 62795,
+  "shopify": 63831,
+  "shopping-bag": 62096,
+  "shopping-basket": 62097,
+  "shopping-cart": 61562,
+  "shopware": 62901,
+  "shower": 62156,
+  "shuttle-van": 62902,
+  "sign": 62681,
+  "sign-in-alt": 62198,
+  "sign-language": 62119,
+  "sign-out-alt": 62197,
+  "signal": 61458,
+  "signature": 62903,
+  "sim-card": 63428,
+  "simplybuilt": 61973,
+  "sistrix": 62446,
+  "sitemap": 61672,
+  "sith": 62738,
+  "skating": 63429,
+  "sketch": 63430,
+  "skiing": 63433,
+  "skiing-nordic": 63434,
+  "skull": 62796,
+  "skull-crossbones": 63252,
+  "skyatlas": 61974,
+  "skype": 61822,
+  "slack": 61848,
+  "slack-hash": 62447,
+  "slash": 63253,
+  "sleigh": 63436,
+  "sliders-h": 61918,
+  "slideshare": 61927,
+  "smile": 61720,
+  "smile-beam": 62904,
+  "smile-wink": 62682,
+  "smog": 63327,
+  "smoking": 62605,
+  "smoking-ban": 62797,
+  "sms": 63437,
+  "snapchat": 62123,
+  "snapchat-ghost": 62124,
+  "snapchat-square": 62125,
+  "snowboarding": 63438,
+  "snowflake": 62172,
+  "snowman": 63440,
+  "snowplow": 63442,
+  "soap": 63854,
+  "socks": 63126,
+  "solar-panel": 62906,
+  "sort": 61660,
+  "sort-alpha-down": 61789,
+  "sort-alpha-down-alt": 63617,
+  "sort-alpha-up": 61790,
+  "sort-alpha-up-alt": 63618,
+  "sort-amount-down": 61792,
+  "sort-amount-down-alt": 63620,
+  "sort-amount-up": 61793,
+  "sort-amount-up-alt": 63621,
+  "sort-down": 61661,
+  "sort-numeric-down": 61794,
+  "sort-numeric-down-alt": 63622,
+  "sort-numeric-up": 61795,
+  "sort-numeric-up-alt": 63623,
+  "sort-up": 61662,
+  "soundcloud": 61886,
+  "sourcetree": 63443,
+  "spa": 62907,
+  "space-shuttle": 61847,
+  "speakap": 62451,
+  "speaker-deck": 63548,
+  "spell-check": 63633,
+  "spider": 63255,
+  "spinner": 61712,
+  "splotch": 62908,
+  "spotify": 61884,
+  "spray-can": 62909,
+  "square": 61640,
+  "square-full": 62556,
+  "square-root-alt": 63128,
+  "squarespace": 62910,
+  "stack-exchange": 61837,
+  "stack-overflow": 61804,
+  "stackpath": 63554,
+  "stamp": 62911,
+  "star": 61445,
+  "star-and-crescent": 63129,
+  "star-half": 61577,
+  "star-half-alt": 62912,
+  "star-of-david": 63130,
+  "star-of-life": 63009,
+  "staylinked": 62453,
+  "steam": 61878,
+  "steam-square": 61879,
+  "steam-symbol": 62454,
+  "step-backward": 61512,
+  "step-forward": 61521,
+  "stethoscope": 61681,
+  "sticker-mule": 62455,
+  "sticky-note": 62025,
+  "stop": 61517,
+  "stop-circle": 62093,
+  "stopwatch": 62194,
+  "stopwatch-20": 63855,
+  "store": 62798,
+  "store-alt": 62799,
+  "store-alt-slash": 63856,
+  "store-slash": 63857,
+  "strava": 62504,
+  "stream": 62800,
+  "street-view": 61981,
+  "strikethrough": 61644,
+  "stripe": 62505,
+  "stripe-s": 62506,
+  "stroopwafel": 62801,
+  "studiovinari": 62456,
+  "stumbleupon": 61860,
+  "stumbleupon-circle": 61859,
+  "subscript": 61740,
+  "subway": 62009,
+  "suitcase": 61682,
+  "suitcase-rolling": 62913,
+  "sun": 61829,
+  "superpowers": 62173,
+  "superscript": 61739,
+  "supple": 62457,
+  "surprise": 62914,
+  "suse": 63446,
+  "swatchbook": 62915,
+  "swift": 63713,
+  "swimmer": 62916,
+  "swimming-pool": 62917,
+  "symfony": 63549,
+  "synagogue": 63131,
+  "sync": 61473,
+  "sync-alt": 62193,
+  "syringe": 62606,
+  "table": 61646,
+  "table-tennis": 62557,
+  "tablet": 61706,
+  "tablet-alt": 62458,
+  "tablets": 62608,
+  "tachometer-alt": 62461,
+  "tag": 61483,
+  "tags": 61484,
+  "tape": 62683,
+  "tasks": 61614,
+  "taxi": 61882,
+  "teamspeak": 62713,
+  "teeth": 63022,
+  "teeth-open": 63023,
+  "telegram": 62150,
+  "telegram-plane": 62462,
+  "temperature-high": 63337,
+  "temperature-low": 63339,
+  "tencent-weibo": 61909,
+  "tenge": 63447,
+  "terminal": 61728,
+  "text-height": 61492,
+  "text-width": 61493,
+  "th": 61450,
+  "th-large": 61449,
+  "th-list": 61451,
+  "the-red-yeti": 63133,
+  "theater-masks": 63024,
+  "themeco": 62918,
+  "themeisle": 62130,
+  "thermometer": 62609,
+  "thermometer-empty": 62155,
+  "thermometer-full": 62151,
+  "thermometer-half": 62153,
+  "thermometer-quarter": 62154,
+  "thermometer-three-quarters": 62152,
+  "think-peaks": 63281,
+  "thumbs-down": 61797,
+  "thumbs-up": 61796,
+  "thumbtack": 61581,
+  "ticket-alt": 62463,
+  "times": 61453,
+  "times-circle": 61527,
+  "tint": 61507,
+  "tint-slash": 62919,
+  "tired": 62920,
+  "toggle-off": 61956,
+  "toggle-on": 61957,
+  "toilet": 63448,
+  "toilet-paper": 63262,
+  "toilet-paper-slash": 63858,
+  "toolbox": 62802,
+  "tools": 63449,
+  "tooth": 62921,
+  "torah": 63136,
+  "torii-gate": 63137,
+  "tractor": 63266,
+  "trade-federation": 62739,
+  "trademark": 62044,
+  "traffic-light": 63031,
+  "trailer": 63809,
+  "train": 62008,
+  "tram": 63450,
+  "transgender": 61988,
+  "transgender-alt": 61989,
+  "trash": 61944,
+  "trash-alt": 62189,
+  "trash-restore": 63529,
+  "trash-restore-alt": 63530,
+  "tree": 61883,
+  "trello": 61825,
+  "tripadvisor": 62050,
+  "trophy": 61585,
+  "truck": 61649,
+  "truck-loading": 62686,
+  "truck-monster": 63035,
+  "truck-moving": 62687,
+  "truck-pickup": 63036,
+  "tshirt": 62803,
+  "tty": 61924,
+  "tumblr": 61811,
+  "tumblr-square": 61812,
+  "tv": 62060,
+  "twitch": 61928,
+  "twitter": 61593,
+  "twitter-square": 61569,
+  "typo3": 62507,
+  "uber": 62466,
+  "ubuntu": 63455,
+  "uikit": 62467,
+  "umbraco": 63720,
+  "umbrella": 61673,
+  "umbrella-beach": 62922,
+  "underline": 61645,
+  "undo": 61666,
+  "undo-alt": 62186,
+  "uniregistry": 62468,
+  "unity": 63817,
+  "universal-access": 62106,
+  "university": 61852,
+  "unlink": 61735,
+  "unlock": 61596,
+  "unlock-alt": 61758,
+  "untappd": 62469,
+  "upload": 61587,
+  "ups": 63456,
+  "usb": 62087,
+  "user": 61447,
+  "user-alt": 62470,
+  "user-alt-slash": 62714,
+  "user-astronaut": 62715,
+  "user-check": 62716,
+  "user-circle": 62141,
+  "user-clock": 62717,
+  "user-cog": 62718,
+  "user-edit": 62719,
+  "user-friends": 62720,
+  "user-graduate": 62721,
+  "user-injured": 63272,
+  "user-lock": 62722,
+  "user-md": 61680,
+  "user-minus": 62723,
+  "user-ninja": 62724,
+  "user-nurse": 63535,
+  "user-plus": 62004,
+  "user-secret": 61979,
+  "user-shield": 62725,
+  "user-slash": 62726,
+  "user-tag": 62727,
+  "user-tie": 62728,
+  "user-times": 62005,
+  "users": 61632,
+  "users-cog": 62729,
+  "usps": 63457,
+  "ussunnah": 62471,
+  "utensil-spoon": 62181,
+  "utensils": 62183,
+  "vaadin": 62472,
+  "vector-square": 62923,
+  "venus": 61985,
+  "venus-double": 61990,
+  "venus-mars": 61992,
+  "viacoin": 62007,
+  "viadeo": 62121,
+  "viadeo-square": 62122,
+  "vial": 62610,
+  "vials": 62611,
+  "viber": 62473,
+  "video": 61501,
+  "video-slash": 62690,
+  "vihara": 63143,
+  "vimeo": 62474,
+  "vimeo-square": 61844,
+  "vimeo-v": 62077,
+  "vine": 61898,
+  "virus": 63860,
+  "virus-slash": 63861,
+  "viruses": 63862,
+  "vk": 61833,
+  "vnv": 62475,
+  "voicemail": 63639,
+  "volleyball-ball": 62559,
+  "volume-down": 61479,
+  "volume-mute": 63145,
+  "volume-off": 61478,
+  "volume-up": 61480,
+  "vote-yea": 63346,
+  "vr-cardboard": 63273,
+  "vuejs": 62495,
+  "walking": 62804,
+  "wallet": 62805,
+  "warehouse": 62612,
+  "water": 63347,
+  "wave-square": 63550,
+  "waze": 63551,
+  "weebly": 62924,
+  "weibo": 61834,
+  "weight": 62614,
+  "weight-hanging": 62925,
+  "weixin": 61911,
+  "whatsapp": 62002,
+  "whatsapp-square": 62476,
+  "wheelchair": 61843,
+  "whmcs": 62477,
+  "wifi": 61931,
+  "wikipedia-w": 62054,
+  "wind": 63278,
+  "window-close": 62480,
+  "window-maximize": 62160,
+  "window-minimize": 62161,
+  "window-restore": 62162,
+  "windows": 61818,
+  "wine-bottle": 63279,
+  "wine-glass": 62691,
+  "wine-glass-alt": 62926,
+  "wix": 62927,
+  "wizards-of-the-coast": 63280,
+  "wolf-pack-battalion": 62740,
+  "won-sign": 61785,
+  "wordpress": 61850,
+  "wordpress-simple": 62481,
+  "wpbeginner": 62103,
+  "wpexplorer": 62174,
+  "wpforms": 62104,
+  "wpressr": 62436,
+  "wrench": 61613,
+  "x-ray": 62615,
+  "xbox": 62482,
+  "xing": 61800,
+  "xing-square": 61801,
+  "y-combinator": 62011,
+  "yahoo": 61854,
+  "yammer": 63552,
+  "yandex": 62483,
+  "yandex-international": 62484,
+  "yarn": 63459,
+  "yelp": 61929,
+  "yen-sign": 61783,
+  "yin-yang": 63149,
+  "yoast": 62129,
+  "youtube": 61799,
+  "youtube-square": 62513,
+  "zhihu": 63039
+}

+ 1599 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_fontawesome5free_meta.json

@@ -0,0 +1,1599 @@
+{
+  "brands": [
+    "500px",
+    "accessible-icon",
+    "accusoft",
+    "acquisitions-incorporated",
+    "adn",
+    "adobe",
+    "adversal",
+    "affiliatetheme",
+    "airbnb",
+    "algolia",
+    "alipay",
+    "amazon-pay",
+    "amazon",
+    "amilia",
+    "android",
+    "angellist",
+    "angrycreative",
+    "angular",
+    "app-store-ios",
+    "app-store",
+    "apper",
+    "apple-pay",
+    "apple",
+    "artstation",
+    "asymmetrik",
+    "atlassian",
+    "audible",
+    "autoprefixer",
+    "avianex",
+    "aviato",
+    "aws",
+    "bandcamp",
+    "battle-net",
+    "behance-square",
+    "behance",
+    "bimobject",
+    "bitbucket",
+    "bitcoin",
+    "bity",
+    "black-tie",
+    "blackberry",
+    "blogger-b",
+    "blogger",
+    "bluetooth-b",
+    "bluetooth",
+    "bootstrap",
+    "btc",
+    "buffer",
+    "buromobelexperte",
+    "buy-n-large",
+    "buysellads",
+    "canadian-maple-leaf",
+    "cc-amazon-pay",
+    "cc-amex",
+    "cc-apple-pay",
+    "cc-diners-club",
+    "cc-discover",
+    "cc-jcb",
+    "cc-mastercard",
+    "cc-paypal",
+    "cc-stripe",
+    "cc-visa",
+    "centercode",
+    "centos",
+    "chrome",
+    "chromecast",
+    "cloudscale",
+    "cloudsmith",
+    "cloudversify",
+    "codepen",
+    "codiepie",
+    "confluence",
+    "connectdevelop",
+    "contao",
+    "cotton-bureau",
+    "cpanel",
+    "creative-commons-by",
+    "creative-commons-nc-eu",
+    "creative-commons-nc-jp",
+    "creative-commons-nc",
+    "creative-commons-nd",
+    "creative-commons-pd-alt",
+    "creative-commons-pd",
+    "creative-commons-remix",
+    "creative-commons-sa",
+    "creative-commons-sampling-plus",
+    "creative-commons-sampling",
+    "creative-commons-share",
+    "creative-commons-zero",
+    "creative-commons",
+    "critical-role",
+    "css3-alt",
+    "css3",
+    "cuttlefish",
+    "d-and-d-beyond",
+    "d-and-d",
+    "dailymotion",
+    "dashcube",
+    "delicious",
+    "deploydog",
+    "deskpro",
+    "dev",
+    "deviantart",
+    "dhl",
+    "diaspora",
+    "digg",
+    "digital-ocean",
+    "discord",
+    "discourse",
+    "dochub",
+    "docker",
+    "draft2digital",
+    "dribbble-square",
+    "dribbble",
+    "dropbox",
+    "drupal",
+    "dyalog",
+    "earlybirds",
+    "ebay",
+    "edge",
+    "elementor",
+    "ello",
+    "ember",
+    "empire",
+    "envira",
+    "erlang",
+    "ethereum",
+    "etsy",
+    "evernote",
+    "expeditedssl",
+    "facebook-f",
+    "facebook-messenger",
+    "facebook-square",
+    "facebook",
+    "fantasy-flight-games",
+    "fedex",
+    "fedora",
+    "figma",
+    "firefox-browser",
+    "firefox",
+    "first-order-alt",
+    "first-order",
+    "firstdraft",
+    "flickr",
+    "flipboard",
+    "fly",
+    "font-awesome-alt",
+    "font-awesome-flag",
+    "font-awesome-logo-full",
+    "font-awesome",
+    "fonticons-fi",
+    "fonticons",
+    "fort-awesome-alt",
+    "fort-awesome",
+    "forumbee",
+    "foursquare",
+    "free-code-camp",
+    "freebsd",
+    "fulcrum",
+    "galactic-republic",
+    "galactic-senate",
+    "get-pocket",
+    "gg-circle",
+    "gg",
+    "git-alt",
+    "git-square",
+    "git",
+    "github-alt",
+    "github-square",
+    "github",
+    "gitkraken",
+    "gitlab",
+    "gitter",
+    "glide-g",
+    "glide",
+    "gofore",
+    "goodreads-g",
+    "goodreads",
+    "google-drive",
+    "google-play",
+    "google-plus-g",
+    "google-plus-square",
+    "google-plus",
+    "google-wallet",
+    "google",
+    "gratipay",
+    "grav",
+    "gripfire",
+    "grunt",
+    "gulp",
+    "hacker-news-square",
+    "hacker-news",
+    "hackerrank",
+    "hips",
+    "hire-a-helper",
+    "hooli",
+    "hornbill",
+    "hotjar",
+    "houzz",
+    "html5",
+    "hubspot",
+    "ideal",
+    "imdb",
+    "instagram-square",
+    "instagram",
+    "intercom",
+    "internet-explorer",
+    "invision",
+    "ioxhost",
+    "itch-io",
+    "itunes-note",
+    "itunes",
+    "java",
+    "jedi-order",
+    "jenkins",
+    "jira",
+    "joget",
+    "joomla",
+    "js-square",
+    "js",
+    "jsfiddle",
+    "kaggle",
+    "keybase",
+    "keycdn",
+    "kickstarter-k",
+    "kickstarter",
+    "korvue",
+    "laravel",
+    "lastfm-square",
+    "lastfm",
+    "leanpub",
+    "less",
+    "line",
+    "linkedin-in",
+    "linkedin",
+    "linode",
+    "linux",
+    "lyft",
+    "magento",
+    "mailchimp",
+    "mandalorian",
+    "markdown",
+    "mastodon",
+    "maxcdn",
+    "mdb",
+    "medapps",
+    "medium-m",
+    "medium",
+    "medrt",
+    "meetup",
+    "megaport",
+    "mendeley",
+    "microblog",
+    "microsoft",
+    "mix",
+    "mixcloud",
+    "mixer",
+    "mizuni",
+    "modx",
+    "monero",
+    "napster",
+    "neos",
+    "nimblr",
+    "node-js",
+    "node",
+    "npm",
+    "ns8",
+    "nutritionix",
+    "odnoklassniki-square",
+    "odnoklassniki",
+    "old-republic",
+    "opencart",
+    "openid",
+    "opera",
+    "optin-monster",
+    "orcid",
+    "osi",
+    "page4",
+    "pagelines",
+    "palfed",
+    "patreon",
+    "paypal",
+    "penny-arcade",
+    "periscope",
+    "phabricator",
+    "phoenix-framework",
+    "phoenix-squadron",
+    "php",
+    "pied-piper-alt",
+    "pied-piper-hat",
+    "pied-piper-pp",
+    "pied-piper-square",
+    "pied-piper",
+    "pinterest-p",
+    "pinterest-square",
+    "pinterest",
+    "playstation",
+    "product-hunt",
+    "pushed",
+    "python",
+    "qq",
+    "quinscape",
+    "quora",
+    "r-project",
+    "raspberry-pi",
+    "ravelry",
+    "react",
+    "reacteurope",
+    "readme",
+    "rebel",
+    "red-river",
+    "reddit-alien",
+    "reddit-square",
+    "reddit",
+    "redhat",
+    "renren",
+    "replyd",
+    "researchgate",
+    "resolving",
+    "rev",
+    "rocketchat",
+    "rockrms",
+    "safari",
+    "salesforce",
+    "sass",
+    "schlix",
+    "scribd",
+    "searchengin",
+    "sellcast",
+    "sellsy",
+    "servicestack",
+    "shirtsinbulk",
+    "shopify",
+    "shopware",
+    "simplybuilt",
+    "sistrix",
+    "sith",
+    "sketch",
+    "skyatlas",
+    "skype",
+    "slack-hash",
+    "slack",
+    "slideshare",
+    "snapchat-ghost",
+    "snapchat-square",
+    "snapchat",
+    "soundcloud",
+    "sourcetree",
+    "speakap",
+    "speaker-deck",
+    "spotify",
+    "squarespace",
+    "stack-exchange",
+    "stack-overflow",
+    "stackpath",
+    "staylinked",
+    "steam-square",
+    "steam-symbol",
+    "steam",
+    "sticker-mule",
+    "strava",
+    "stripe-s",
+    "stripe",
+    "studiovinari",
+    "stumbleupon-circle",
+    "stumbleupon",
+    "superpowers",
+    "supple",
+    "suse",
+    "swift",
+    "symfony",
+    "teamspeak",
+    "telegram-plane",
+    "telegram",
+    "tencent-weibo",
+    "the-red-yeti",
+    "themeco",
+    "themeisle",
+    "think-peaks",
+    "trade-federation",
+    "trello",
+    "tripadvisor",
+    "tumblr-square",
+    "tumblr",
+    "twitch",
+    "twitter-square",
+    "twitter",
+    "typo3",
+    "uber",
+    "ubuntu",
+    "uikit",
+    "umbraco",
+    "uniregistry",
+    "unity",
+    "untappd",
+    "ups",
+    "usb",
+    "usps",
+    "ussunnah",
+    "vaadin",
+    "viacoin",
+    "viadeo-square",
+    "viadeo",
+    "viber",
+    "vimeo-square",
+    "vimeo-v",
+    "vimeo",
+    "vine",
+    "vk",
+    "vnv",
+    "vuejs",
+    "waze",
+    "weebly",
+    "weibo",
+    "weixin",
+    "whatsapp-square",
+    "whatsapp",
+    "whmcs",
+    "wikipedia-w",
+    "windows",
+    "wix",
+    "wizards-of-the-coast",
+    "wolf-pack-battalion",
+    "wordpress-simple",
+    "wordpress",
+    "wpbeginner",
+    "wpexplorer",
+    "wpforms",
+    "wpressr",
+    "xbox",
+    "xing-square",
+    "xing",
+    "y-combinator",
+    "yahoo",
+    "yammer",
+    "yandex-international",
+    "yandex",
+    "yarn",
+    "yelp",
+    "yoast",
+    "youtube-square",
+    "youtube",
+    "zhihu"
+  ],
+  "regular": [
+    "address-book",
+    "address-card",
+    "angry",
+    "arrow-alt-circle-down",
+    "arrow-alt-circle-left",
+    "arrow-alt-circle-right",
+    "arrow-alt-circle-up",
+    "bell-slash",
+    "bell",
+    "bookmark",
+    "building",
+    "calendar-alt",
+    "calendar-check",
+    "calendar-minus",
+    "calendar-plus",
+    "calendar-times",
+    "calendar",
+    "caret-square-down",
+    "caret-square-left",
+    "caret-square-right",
+    "caret-square-up",
+    "chart-bar",
+    "check-circle",
+    "check-square",
+    "circle",
+    "clipboard",
+    "clock",
+    "clone",
+    "closed-captioning",
+    "comment-alt",
+    "comment-dots",
+    "comment",
+    "comments",
+    "compass",
+    "copy",
+    "copyright",
+    "credit-card",
+    "dizzy",
+    "dot-circle",
+    "edit",
+    "envelope-open",
+    "envelope",
+    "eye-slash",
+    "eye",
+    "file-alt",
+    "file-archive",
+    "file-audio",
+    "file-code",
+    "file-excel",
+    "file-image",
+    "file-pdf",
+    "file-powerpoint",
+    "file-video",
+    "file-word",
+    "file",
+    "flag",
+    "flushed",
+    "folder-open",
+    "folder",
+    "font-awesome-logo-full",
+    "frown-open",
+    "frown",
+    "futbol",
+    "gem",
+    "grimace",
+    "grin-alt",
+    "grin-beam-sweat",
+    "grin-beam",
+    "grin-hearts",
+    "grin-squint-tears",
+    "grin-squint",
+    "grin-stars",
+    "grin-tears",
+    "grin-tongue-squint",
+    "grin-tongue-wink",
+    "grin-tongue",
+    "grin-wink",
+    "grin",
+    "hand-lizard",
+    "hand-paper",
+    "hand-peace",
+    "hand-point-down",
+    "hand-point-left",
+    "hand-point-right",
+    "hand-point-up",
+    "hand-pointer",
+    "hand-rock",
+    "hand-scissors",
+    "hand-spock",
+    "handshake",
+    "hdd",
+    "heart",
+    "hospital",
+    "hourglass",
+    "id-badge",
+    "id-card",
+    "image",
+    "images",
+    "keyboard",
+    "kiss-beam",
+    "kiss-wink-heart",
+    "kiss",
+    "laugh-beam",
+    "laugh-squint",
+    "laugh-wink",
+    "laugh",
+    "lemon",
+    "life-ring",
+    "lightbulb",
+    "list-alt",
+    "map",
+    "meh-blank",
+    "meh-rolling-eyes",
+    "meh",
+    "minus-square",
+    "money-bill-alt",
+    "moon",
+    "newspaper",
+    "object-group",
+    "object-ungroup",
+    "paper-plane",
+    "pause-circle",
+    "play-circle",
+    "plus-square",
+    "question-circle",
+    "registered",
+    "sad-cry",
+    "sad-tear",
+    "save",
+    "share-square",
+    "smile-beam",
+    "smile-wink",
+    "smile",
+    "snowflake",
+    "square",
+    "star-half",
+    "star",
+    "sticky-note",
+    "stop-circle",
+    "sun",
+    "surprise",
+    "thumbs-down",
+    "thumbs-up",
+    "times-circle",
+    "tired",
+    "trash-alt",
+    "user-circle",
+    "user",
+    "window-close",
+    "window-maximize",
+    "window-minimize",
+    "window-restore"
+  ],
+  "solid": [
+    "ad",
+    "address-book",
+    "address-card",
+    "adjust",
+    "air-freshener",
+    "align-center",
+    "align-justify",
+    "align-left",
+    "align-right",
+    "allergies",
+    "ambulance",
+    "american-sign-language-interpreting",
+    "anchor",
+    "angle-double-down",
+    "angle-double-left",
+    "angle-double-right",
+    "angle-double-up",
+    "angle-down",
+    "angle-left",
+    "angle-right",
+    "angle-up",
+    "angry",
+    "ankh",
+    "apple-alt",
+    "archive",
+    "archway",
+    "arrow-alt-circle-down",
+    "arrow-alt-circle-left",
+    "arrow-alt-circle-right",
+    "arrow-alt-circle-up",
+    "arrow-circle-down",
+    "arrow-circle-left",
+    "arrow-circle-right",
+    "arrow-circle-up",
+    "arrow-down",
+    "arrow-left",
+    "arrow-right",
+    "arrow-up",
+    "arrows-alt-h",
+    "arrows-alt-v",
+    "arrows-alt",
+    "assistive-listening-systems",
+    "asterisk",
+    "at",
+    "atlas",
+    "atom",
+    "audio-description",
+    "award",
+    "baby-carriage",
+    "baby",
+    "backspace",
+    "backward",
+    "bacon",
+    "bahai",
+    "balance-scale-left",
+    "balance-scale-right",
+    "balance-scale",
+    "ban",
+    "band-aid",
+    "barcode",
+    "bars",
+    "baseball-ball",
+    "basketball-ball",
+    "bath",
+    "battery-empty",
+    "battery-full",
+    "battery-half",
+    "battery-quarter",
+    "battery-three-quarters",
+    "bed",
+    "beer",
+    "bell-slash",
+    "bell",
+    "bezier-curve",
+    "bible",
+    "bicycle",
+    "biking",
+    "binoculars",
+    "biohazard",
+    "birthday-cake",
+    "blender-phone",
+    "blender",
+    "blind",
+    "blog",
+    "bold",
+    "bolt",
+    "bomb",
+    "bone",
+    "bong",
+    "book-dead",
+    "book-medical",
+    "book-open",
+    "book-reader",
+    "book",
+    "bookmark",
+    "border-all",
+    "border-none",
+    "border-style",
+    "bowling-ball",
+    "box-open",
+    "box-tissue",
+    "box",
+    "boxes",
+    "braille",
+    "brain",
+    "bread-slice",
+    "briefcase-medical",
+    "briefcase",
+    "broadcast-tower",
+    "broom",
+    "brush",
+    "bug",
+    "building",
+    "bullhorn",
+    "bullseye",
+    "burn",
+    "bus-alt",
+    "bus",
+    "business-time",
+    "calculator",
+    "calendar-alt",
+    "calendar-check",
+    "calendar-day",
+    "calendar-minus",
+    "calendar-plus",
+    "calendar-times",
+    "calendar-week",
+    "calendar",
+    "camera-retro",
+    "camera",
+    "campground",
+    "candy-cane",
+    "cannabis",
+    "capsules",
+    "car-alt",
+    "car-battery",
+    "car-crash",
+    "car-side",
+    "car",
+    "caravan",
+    "caret-down",
+    "caret-left",
+    "caret-right",
+    "caret-square-down",
+    "caret-square-left",
+    "caret-square-right",
+    "caret-square-up",
+    "caret-up",
+    "carrot",
+    "cart-arrow-down",
+    "cart-plus",
+    "cash-register",
+    "cat",
+    "certificate",
+    "chair",
+    "chalkboard-teacher",
+    "chalkboard",
+    "charging-station",
+    "chart-area",
+    "chart-bar",
+    "chart-line",
+    "chart-pie",
+    "check-circle",
+    "check-double",
+    "check-square",
+    "check",
+    "cheese",
+    "chess-bishop",
+    "chess-board",
+    "chess-king",
+    "chess-knight",
+    "chess-pawn",
+    "chess-queen",
+    "chess-rook",
+    "chess",
+    "chevron-circle-down",
+    "chevron-circle-left",
+    "chevron-circle-right",
+    "chevron-circle-up",
+    "chevron-down",
+    "chevron-left",
+    "chevron-right",
+    "chevron-up",
+    "child",
+    "church",
+    "circle-notch",
+    "circle",
+    "city",
+    "clinic-medical",
+    "clipboard-check",
+    "clipboard-list",
+    "clipboard",
+    "clock",
+    "clone",
+    "closed-captioning",
+    "cloud-download-alt",
+    "cloud-meatball",
+    "cloud-moon-rain",
+    "cloud-moon",
+    "cloud-rain",
+    "cloud-showers-heavy",
+    "cloud-sun-rain",
+    "cloud-sun",
+    "cloud-upload-alt",
+    "cloud",
+    "cocktail",
+    "code-branch",
+    "code",
+    "coffee",
+    "cog",
+    "cogs",
+    "coins",
+    "columns",
+    "comment-alt",
+    "comment-dollar",
+    "comment-dots",
+    "comment-medical",
+    "comment-slash",
+    "comment",
+    "comments-dollar",
+    "comments",
+    "compact-disc",
+    "compass",
+    "compress-alt",
+    "compress-arrows-alt",
+    "compress",
+    "concierge-bell",
+    "cookie-bite",
+    "cookie",
+    "copy",
+    "copyright",
+    "couch",
+    "credit-card",
+    "crop-alt",
+    "crop",
+    "cross",
+    "crosshairs",
+    "crow",
+    "crown",
+    "crutch",
+    "cube",
+    "cubes",
+    "cut",
+    "database",
+    "deaf",
+    "democrat",
+    "desktop",
+    "dharmachakra",
+    "diagnoses",
+    "dice-d20",
+    "dice-d6",
+    "dice-five",
+    "dice-four",
+    "dice-one",
+    "dice-six",
+    "dice-three",
+    "dice-two",
+    "dice",
+    "digital-tachograph",
+    "directions",
+    "disease",
+    "divide",
+    "dizzy",
+    "dna",
+    "dog",
+    "dollar-sign",
+    "dolly-flatbed",
+    "dolly",
+    "donate",
+    "door-closed",
+    "door-open",
+    "dot-circle",
+    "dove",
+    "download",
+    "drafting-compass",
+    "dragon",
+    "draw-polygon",
+    "drum-steelpan",
+    "drum",
+    "drumstick-bite",
+    "dumbbell",
+    "dumpster-fire",
+    "dumpster",
+    "dungeon",
+    "edit",
+    "egg",
+    "eject",
+    "ellipsis-h",
+    "ellipsis-v",
+    "envelope-open-text",
+    "envelope-open",
+    "envelope-square",
+    "envelope",
+    "equals",
+    "eraser",
+    "ethernet",
+    "euro-sign",
+    "exchange-alt",
+    "exclamation-circle",
+    "exclamation-triangle",
+    "exclamation",
+    "expand-alt",
+    "expand-arrows-alt",
+    "expand",
+    "external-link-alt",
+    "external-link-square-alt",
+    "eye-dropper",
+    "eye-slash",
+    "eye",
+    "fan",
+    "fast-backward",
+    "fast-forward",
+    "faucet",
+    "fax",
+    "feather-alt",
+    "feather",
+    "female",
+    "fighter-jet",
+    "file-alt",
+    "file-archive",
+    "file-audio",
+    "file-code",
+    "file-contract",
+    "file-csv",
+    "file-download",
+    "file-excel",
+    "file-export",
+    "file-image",
+    "file-import",
+    "file-invoice-dollar",
+    "file-invoice",
+    "file-medical-alt",
+    "file-medical",
+    "file-pdf",
+    "file-powerpoint",
+    "file-prescription",
+    "file-signature",
+    "file-upload",
+    "file-video",
+    "file-word",
+    "file",
+    "fill-drip",
+    "fill",
+    "film",
+    "filter",
+    "fingerprint",
+    "fire-alt",
+    "fire-extinguisher",
+    "fire",
+    "first-aid",
+    "fish",
+    "fist-raised",
+    "flag-checkered",
+    "flag-usa",
+    "flag",
+    "flask",
+    "flushed",
+    "folder-minus",
+    "folder-open",
+    "folder-plus",
+    "folder",
+    "font-awesome-logo-full",
+    "font",
+    "football-ball",
+    "forward",
+    "frog",
+    "frown-open",
+    "frown",
+    "funnel-dollar",
+    "futbol",
+    "gamepad",
+    "gas-pump",
+    "gavel",
+    "gem",
+    "genderless",
+    "ghost",
+    "gift",
+    "gifts",
+    "glass-cheers",
+    "glass-martini-alt",
+    "glass-martini",
+    "glass-whiskey",
+    "glasses",
+    "globe-africa",
+    "globe-americas",
+    "globe-asia",
+    "globe-europe",
+    "globe",
+    "golf-ball",
+    "gopuram",
+    "graduation-cap",
+    "greater-than-equal",
+    "greater-than",
+    "grimace",
+    "grin-alt",
+    "grin-beam-sweat",
+    "grin-beam",
+    "grin-hearts",
+    "grin-squint-tears",
+    "grin-squint",
+    "grin-stars",
+    "grin-tears",
+    "grin-tongue-squint",
+    "grin-tongue-wink",
+    "grin-tongue",
+    "grin-wink",
+    "grin",
+    "grip-horizontal",
+    "grip-lines-vertical",
+    "grip-lines",
+    "grip-vertical",
+    "guitar",
+    "h-square",
+    "hamburger",
+    "hammer",
+    "hamsa",
+    "hand-holding-heart",
+    "hand-holding-medical",
+    "hand-holding-usd",
+    "hand-holding-water",
+    "hand-holding",
+    "hand-lizard",
+    "hand-middle-finger",
+    "hand-paper",
+    "hand-peace",
+    "hand-point-down",
+    "hand-point-left",
+    "hand-point-right",
+    "hand-point-up",
+    "hand-pointer",
+    "hand-rock",
+    "hand-scissors",
+    "hand-sparkles",
+    "hand-spock",
+    "hands-helping",
+    "hands-wash",
+    "hands",
+    "handshake-alt-slash",
+    "handshake-slash",
+    "handshake",
+    "hanukiah",
+    "hard-hat",
+    "hashtag",
+    "hat-cowboy-side",
+    "hat-cowboy",
+    "hat-wizard",
+    "hdd",
+    "head-side-cough-slash",
+    "head-side-cough",
+    "head-side-mask",
+    "head-side-virus",
+    "heading",
+    "headphones-alt",
+    "headphones",
+    "headset",
+    "heart-broken",
+    "heart",
+    "heartbeat",
+    "helicopter",
+    "highlighter",
+    "hiking",
+    "hippo",
+    "history",
+    "hockey-puck",
+    "holly-berry",
+    "home",
+    "horse-head",
+    "horse",
+    "hospital-alt",
+    "hospital-symbol",
+    "hospital-user",
+    "hospital",
+    "hot-tub",
+    "hotdog",
+    "hotel",
+    "hourglass-end",
+    "hourglass-half",
+    "hourglass-start",
+    "hourglass",
+    "house-damage",
+    "house-user",
+    "hryvnia",
+    "i-cursor",
+    "ice-cream",
+    "icicles",
+    "icons",
+    "id-badge",
+    "id-card-alt",
+    "id-card",
+    "igloo",
+    "image",
+    "images",
+    "inbox",
+    "indent",
+    "industry",
+    "infinity",
+    "info-circle",
+    "info",
+    "italic",
+    "jedi",
+    "joint",
+    "journal-whills",
+    "kaaba",
+    "key",
+    "keyboard",
+    "khanda",
+    "kiss-beam",
+    "kiss-wink-heart",
+    "kiss",
+    "kiwi-bird",
+    "landmark",
+    "language",
+    "laptop-code",
+    "laptop-house",
+    "laptop-medical",
+    "laptop",
+    "laugh-beam",
+    "laugh-squint",
+    "laugh-wink",
+    "laugh",
+    "layer-group",
+    "leaf",
+    "lemon",
+    "less-than-equal",
+    "less-than",
+    "level-down-alt",
+    "level-up-alt",
+    "life-ring",
+    "lightbulb",
+    "link",
+    "lira-sign",
+    "list-alt",
+    "list-ol",
+    "list-ul",
+    "list",
+    "location-arrow",
+    "lock-open",
+    "lock",
+    "long-arrow-alt-down",
+    "long-arrow-alt-left",
+    "long-arrow-alt-right",
+    "long-arrow-alt-up",
+    "low-vision",
+    "luggage-cart",
+    "lungs-virus",
+    "lungs",
+    "magic",
+    "magnet",
+    "mail-bulk",
+    "male",
+    "map-marked-alt",
+    "map-marked",
+    "map-marker-alt",
+    "map-marker",
+    "map-pin",
+    "map-signs",
+    "map",
+    "marker",
+    "mars-double",
+    "mars-stroke-h",
+    "mars-stroke-v",
+    "mars-stroke",
+    "mars",
+    "mask",
+    "medal",
+    "medkit",
+    "meh-blank",
+    "meh-rolling-eyes",
+    "meh",
+    "memory",
+    "menorah",
+    "mercury",
+    "meteor",
+    "microchip",
+    "microphone-alt-slash",
+    "microphone-alt",
+    "microphone-slash",
+    "microphone",
+    "microscope",
+    "minus-circle",
+    "minus-square",
+    "minus",
+    "mitten",
+    "mobile-alt",
+    "mobile",
+    "money-bill-alt",
+    "money-bill-wave-alt",
+    "money-bill-wave",
+    "money-bill",
+    "money-check-alt",
+    "money-check",
+    "monument",
+    "moon",
+    "mortar-pestle",
+    "mosque",
+    "motorcycle",
+    "mountain",
+    "mouse-pointer",
+    "mouse",
+    "mug-hot",
+    "music",
+    "network-wired",
+    "neuter",
+    "newspaper",
+    "not-equal",
+    "notes-medical",
+    "object-group",
+    "object-ungroup",
+    "oil-can",
+    "om",
+    "otter",
+    "outdent",
+    "pager",
+    "paint-brush",
+    "paint-roller",
+    "palette",
+    "pallet",
+    "paper-plane",
+    "paperclip",
+    "parachute-box",
+    "paragraph",
+    "parking",
+    "passport",
+    "pastafarianism",
+    "paste",
+    "pause-circle",
+    "pause",
+    "paw",
+    "peace",
+    "pen-alt",
+    "pen-fancy",
+    "pen-nib",
+    "pen-square",
+    "pen",
+    "pencil-alt",
+    "pencil-ruler",
+    "people-arrows",
+    "people-carry",
+    "pepper-hot",
+    "percent",
+    "percentage",
+    "person-booth",
+    "phone-alt",
+    "phone-slash",
+    "phone-square-alt",
+    "phone-square",
+    "phone-volume",
+    "phone",
+    "photo-video",
+    "piggy-bank",
+    "pills",
+    "pizza-slice",
+    "place-of-worship",
+    "plane-arrival",
+    "plane-departure",
+    "plane-slash",
+    "plane",
+    "play-circle",
+    "play",
+    "plug",
+    "plus-circle",
+    "plus-square",
+    "plus",
+    "podcast",
+    "poll-h",
+    "poll",
+    "poo-storm",
+    "poo",
+    "poop",
+    "portrait",
+    "pound-sign",
+    "power-off",
+    "pray",
+    "praying-hands",
+    "prescription-bottle-alt",
+    "prescription-bottle",
+    "prescription",
+    "print",
+    "procedures",
+    "project-diagram",
+    "pump-medical",
+    "pump-soap",
+    "puzzle-piece",
+    "qrcode",
+    "question-circle",
+    "question",
+    "quidditch",
+    "quote-left",
+    "quote-right",
+    "quran",
+    "radiation-alt",
+    "radiation",
+    "rainbow",
+    "random",
+    "receipt",
+    "record-vinyl",
+    "recycle",
+    "redo-alt",
+    "redo",
+    "registered",
+    "remove-format",
+    "reply-all",
+    "reply",
+    "republican",
+    "restroom",
+    "retweet",
+    "ribbon",
+    "ring",
+    "road",
+    "robot",
+    "rocket",
+    "route",
+    "rss-square",
+    "rss",
+    "ruble-sign",
+    "ruler-combined",
+    "ruler-horizontal",
+    "ruler-vertical",
+    "ruler",
+    "running",
+    "rupee-sign",
+    "sad-cry",
+    "sad-tear",
+    "satellite-dish",
+    "satellite",
+    "save",
+    "school",
+    "screwdriver",
+    "scroll",
+    "sd-card",
+    "search-dollar",
+    "search-location",
+    "search-minus",
+    "search-plus",
+    "search",
+    "seedling",
+    "server",
+    "shapes",
+    "share-alt-square",
+    "share-alt",
+    "share-square",
+    "share",
+    "shekel-sign",
+    "shield-alt",
+    "shield-virus",
+    "ship",
+    "shipping-fast",
+    "shoe-prints",
+    "shopping-bag",
+    "shopping-basket",
+    "shopping-cart",
+    "shower",
+    "shuttle-van",
+    "sign-in-alt",
+    "sign-language",
+    "sign-out-alt",
+    "sign",
+    "signal",
+    "signature",
+    "sim-card",
+    "sitemap",
+    "skating",
+    "skiing-nordic",
+    "skiing",
+    "skull-crossbones",
+    "skull",
+    "slash",
+    "sleigh",
+    "sliders-h",
+    "smile-beam",
+    "smile-wink",
+    "smile",
+    "smog",
+    "smoking-ban",
+    "smoking",
+    "sms",
+    "snowboarding",
+    "snowflake",
+    "snowman",
+    "snowplow",
+    "soap",
+    "socks",
+    "solar-panel",
+    "sort-alpha-down-alt",
+    "sort-alpha-down",
+    "sort-alpha-up-alt",
+    "sort-alpha-up",
+    "sort-amount-down-alt",
+    "sort-amount-down",
+    "sort-amount-up-alt",
+    "sort-amount-up",
+    "sort-down",
+    "sort-numeric-down-alt",
+    "sort-numeric-down",
+    "sort-numeric-up-alt",
+    "sort-numeric-up",
+    "sort-up",
+    "sort",
+    "spa",
+    "space-shuttle",
+    "spell-check",
+    "spider",
+    "spinner",
+    "splotch",
+    "spray-can",
+    "square-full",
+    "square-root-alt",
+    "square",
+    "stamp",
+    "star-and-crescent",
+    "star-half-alt",
+    "star-half",
+    "star-of-david",
+    "star-of-life",
+    "star",
+    "step-backward",
+    "step-forward",
+    "stethoscope",
+    "sticky-note",
+    "stop-circle",
+    "stop",
+    "stopwatch-20",
+    "stopwatch",
+    "store-alt-slash",
+    "store-alt",
+    "store-slash",
+    "store",
+    "stream",
+    "street-view",
+    "strikethrough",
+    "stroopwafel",
+    "subscript",
+    "subway",
+    "suitcase-rolling",
+    "suitcase",
+    "sun",
+    "superscript",
+    "surprise",
+    "swatchbook",
+    "swimmer",
+    "swimming-pool",
+    "synagogue",
+    "sync-alt",
+    "sync",
+    "syringe",
+    "table-tennis",
+    "table",
+    "tablet-alt",
+    "tablet",
+    "tablets",
+    "tachometer-alt",
+    "tag",
+    "tags",
+    "tape",
+    "tasks",
+    "taxi",
+    "teeth-open",
+    "teeth",
+    "temperature-high",
+    "temperature-low",
+    "tenge",
+    "terminal",
+    "text-height",
+    "text-width",
+    "th-large",
+    "th-list",
+    "th",
+    "theater-masks",
+    "thermometer-empty",
+    "thermometer-full",
+    "thermometer-half",
+    "thermometer-quarter",
+    "thermometer-three-quarters",
+    "thermometer",
+    "thumbs-down",
+    "thumbs-up",
+    "thumbtack",
+    "ticket-alt",
+    "times-circle",
+    "times",
+    "tint-slash",
+    "tint",
+    "tired",
+    "toggle-off",
+    "toggle-on",
+    "toilet-paper-slash",
+    "toilet-paper",
+    "toilet",
+    "toolbox",
+    "tools",
+    "tooth",
+    "torah",
+    "torii-gate",
+    "tractor",
+    "trademark",
+    "traffic-light",
+    "trailer",
+    "train",
+    "tram",
+    "transgender-alt",
+    "transgender",
+    "trash-alt",
+    "trash-restore-alt",
+    "trash-restore",
+    "trash",
+    "tree",
+    "trophy",
+    "truck-loading",
+    "truck-monster",
+    "truck-moving",
+    "truck-pickup",
+    "truck",
+    "tshirt",
+    "tty",
+    "tv",
+    "umbrella-beach",
+    "umbrella",
+    "underline",
+    "undo-alt",
+    "undo",
+    "universal-access",
+    "university",
+    "unlink",
+    "unlock-alt",
+    "unlock",
+    "upload",
+    "user-alt-slash",
+    "user-alt",
+    "user-astronaut",
+    "user-check",
+    "user-circle",
+    "user-clock",
+    "user-cog",
+    "user-edit",
+    "user-friends",
+    "user-graduate",
+    "user-injured",
+    "user-lock",
+    "user-md",
+    "user-minus",
+    "user-ninja",
+    "user-nurse",
+    "user-plus",
+    "user-secret",
+    "user-shield",
+    "user-slash",
+    "user-tag",
+    "user-tie",
+    "user-times",
+    "user",
+    "users-cog",
+    "users",
+    "utensil-spoon",
+    "utensils",
+    "vector-square",
+    "venus-double",
+    "venus-mars",
+    "venus",
+    "vial",
+    "vials",
+    "video-slash",
+    "video",
+    "vihara",
+    "virus-slash",
+    "virus",
+    "viruses",
+    "voicemail",
+    "volleyball-ball",
+    "volume-down",
+    "volume-mute",
+    "volume-off",
+    "volume-up",
+    "vote-yea",
+    "vr-cardboard",
+    "walking",
+    "wallet",
+    "warehouse",
+    "water",
+    "wave-square",
+    "weight-hanging",
+    "weight",
+    "wheelchair",
+    "wifi",
+    "wind",
+    "window-close",
+    "window-maximize",
+    "window-minimize",
+    "window-restore",
+    "wine-bottle",
+    "wine-glass-alt",
+    "wine-glass",
+    "won-sign",
+    "wrench",
+    "x-ray",
+    "yen-sign",
+    "yin-yang"
+  ]
+}

+ 619 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_fontisto.json

@@ -0,0 +1,619 @@
+{
+  "acrobat-reader": 60095,
+  "applemusic": 60096,
+  "atlassian": 60097,
+  "aws": 60098,
+  "baidu": 60099,
+  "bing": 60100,
+  "bower": 60101,
+  "dailymotion": 60102,
+  "delicious": 60103,
+  "deviantart": 60104,
+  "disqus": 60105,
+  "flipboard": 60106,
+  "graphql": 60107,
+  "hexo": 60108,
+  "hipchat": 60109,
+  "icq": 60110,
+  "invision": 60111,
+  "jekyll": 60112,
+  "jira": 60113,
+  "json": 60114,
+  "livestream": 60115,
+  "messenger": 60116,
+  "meteor": 60117,
+  "onenote": 60118,
+  "mongodb": 60119,
+  "netflix": 60120,
+  "nginx": 60121,
+  "odnoklassniki": 60122,
+  "onedrive": 60123,
+  "origin": 60124,
+  "pingdom": 60125,
+  "rails": 60126,
+  "raspberry-pi": 60127,
+  "redis": 60128,
+  "redux": 60129,
+  "saucelabs": 60130,
+  "scorp": 60131,
+  "sentry": 60132,
+  "shazam": 60133,
+  "shopify": 60134,
+  "sinaweibo": 60135,
+  "slides": 60136,
+  "sublimetext": 60137,
+  "swift": 60138,
+  "ted": 60139,
+  "telegram": 60140,
+  "tesla": 60141,
+  "tinder": 60142,
+  "treehouse": 60143,
+  "twoo": 60144,
+  "udacity": 60145,
+  "webstorm": 60146,
+  "wix": 60147,
+  "yandex-international": 60148,
+  "yandex": 60149,
+  "ember": 60087,
+  "cpanel": 60088,
+  "viber": 60089,
+  "deskpro": 60090,
+  "discord": 60091,
+  "discourse": 60092,
+  "adobe": 60059,
+  "algolia": 60060,
+  "atom": 60061,
+  "babel": 60062,
+  "coffeescript": 60063,
+  "electronjs": 60064,
+  "mysql": 60065,
+  "oracle": 60066,
+  "php": 60067,
+  "sourcetree": 60068,
+  "ubuntu": 60069,
+  "unity": 60070,
+  "unreal-engine": 60071,
+  "webpack": 60072,
+  "angelist": 60026,
+  "app-store": 60027,
+  "digg": 60030,
+  "dockers": 60031,
+  "envato": 60032,
+  "gitlab": 60033,
+  "google-drive": 60034,
+  "google-play": 60035,
+  "grunt": 60036,
+  "gulp": 60037,
+  "hacker-news": 60038,
+  "imdb": 60039,
+  "jenkins": 60040,
+  "joomla": 60041,
+  "kickstarter": 60042,
+  "laravel": 60043,
+  "less": 60044,
+  "line": 60045,
+  "npm": 60046,
+  "periscope": 60047,
+  "product-hunt": 60048,
+  "quora": 60049,
+  "skyatlas": 60050,
+  "stylus": 60051,
+  "travis": 60052,
+  "trello": 60053,
+  "uber": 60054,
+  "vine": 60055,
+  "visual-studio": 60056,
+  "vk": 60057,
+  "vuejs": 60058,
+  "microsoft": 60025,
+  "blogger": 60028,
+  "500px": 59658,
+  "amazon": 59659,
+  "ampproject": 59660,
+  "android": 59661,
+  "angularjs": 59662,
+  "apple": 59663,
+  "behance": 59664,
+  "bitbucket": 59665,
+  "bluetooth-b": 59666,
+  "cloudflare": 59667,
+  "codepen": 59668,
+  "css3": 59669,
+  "dribbble": 59670,
+  "dropbox": 59671,
+  "facebook": 59672,
+  "flickr": 59673,
+  "foursquare": 59674,
+  "git": 59675,
+  "github": 59676,
+  "google-plus": 59677,
+  "google": 59678,
+  "hangout": 59679,
+  "houzz": 59680,
+  "html5": 59681,
+  "instagram": 59682,
+  "java": 59683,
+  "jquery": 59684,
+  "jsfiddle": 59685,
+  "linkedin": 59686,
+  "linux": 59687,
+  "magento": 59688,
+  "maxcdn": 59689,
+  "medium": 59690,
+  "meetup": 59691,
+  "nodejs": 59692,
+  "opencart": 59693,
+  "pinterest": 59694,
+  "playstation": 59695,
+  "python": 59696,
+  "react": 59697,
+  "reddit": 59698,
+  "ruby": 59699,
+  "sass": 59700,
+  "skype": 59701,
+  "slack": 59702,
+  "snapchat": 59703,
+  "soundcloud": 59704,
+  "spotify": 59705,
+  "stack-overflow": 59706,
+  "steam": 59707,
+  "stumbleupon": 59708,
+  "svn": 59709,
+  "swarm": 59710,
+  "tripadvisor": 59711,
+  "tumblr": 59712,
+  "twitch": 59713,
+  "twitter": 59714,
+  "vimeo": 59715,
+  "wetransfer": 59716,
+  "whatsapp": 59717,
+  "wifi-logo": 59718,
+  "wikipedia": 59719,
+  "windows": 59720,
+  "wordpress": 59721,
+  "xbox": 59722,
+  "yahoo": 59723,
+  "yelp": 59724,
+  "youtube-play": 59725,
+  "cocoapods": 60200,
+  "composer": 60201,
+  "yarn": 60202,
+  "language": 59943,
+  "toggle-off": 59948,
+  "toggle-on": 60029,
+  "anchor": 60094,
+  "archive": 60150,
+  "at": 60151,
+  "ban": 60152,
+  "battery-half": 60153,
+  "battery-full": 60154,
+  "battery-empty": 60155,
+  "battery-quarter": 60156,
+  "battery-three-quarters": 60157,
+  "bell-alt": 60158,
+  "bell": 60159,
+  "bookmark-alt": 60160,
+  "bookmark": 60161,
+  "bug": 60162,
+  "calculator": 60163,
+  "calendar": 60164,
+  "crosshairs": 60165,
+  "desktop": 60166,
+  "download": 60167,
+  "film": 60168,
+  "history": 60169,
+  "hourglass-end": 60170,
+  "hourglass-half": 60171,
+  "hourglass-start": 60172,
+  "hourglass": 60173,
+  "info": 60174,
+  "key": 60175,
+  "keyboard": 60176,
+  "laptop": 60177,
+  "lightbulb": 60178,
+  "magnet": 60179,
+  "map-marker-alt": 60180,
+  "map-marker": 60181,
+  "map": 60182,
+  "mobile-alt": 60183,
+  "mobile": 60184,
+  "paw": 60185,
+  "phone": 60186,
+  "power": 60187,
+  "qrcode": 60188,
+  "question": 60189,
+  "search": 60190,
+  "sitemap": 60191,
+  "star-half": 60192,
+  "stopwatch": 60193,
+  "tablet-alt": 60194,
+  "tablet": 60195,
+  "ticket": 60196,
+  "tv": 60197,
+  "upload": 60198,
+  "user-secret": 60199,
+  "camera": 59798,
+  "clock": 59799,
+  "close-a": 59800,
+  "code": 59801,
+  "comment": 59802,
+  "commenting": 59803,
+  "comments": 59804,
+  "crop": 59805,
+  "cursor": 59806,
+  "database": 59807,
+  "date": 59808,
+  "earth": 59809,
+  "email": 59810,
+  "eye": 59811,
+  "female": 59812,
+  "favorite": 59813,
+  "filter": 59814,
+  "fire": 59815,
+  "flag": 59816,
+  "flash": 59817,
+  "home": 59818,
+  "link": 59819,
+  "locked": 59820,
+  "male": 59821,
+  "minus-a": 59822,
+  "more-v-a": 59823,
+  "more-v": 59824,
+  "move-h-a": 59825,
+  "move-h": 59826,
+  "nav-icon-a": 59827,
+  "nav-icon-grid-a": 59828,
+  "nav-icon-grid": 59829,
+  "nav-icon-list-a": 59830,
+  "nav-icon-list": 59831,
+  "nav-icon": 59832,
+  "navigate": 59833,
+  "paper-plane": 59834,
+  "person": 59835,
+  "persons": 59836,
+  "picture": 59837,
+  "plus-a": 59838,
+  "print": 59839,
+  "quote-a-left": 59840,
+  "quote-a-right": 59841,
+  "quote-left": 59842,
+  "quote-right": 59843,
+  "reply": 59844,
+  "rss": 59845,
+  "scissors": 59846,
+  "share-a": 59847,
+  "share": 59848,
+  "trash": 59849,
+  "unlocked": 59850,
+  "usb": 59851,
+  "wifi": 59852,
+  "world-o": 59853,
+  "world": 59854,
+  "zoom": 59855,
+  "adjust": 60015,
+  "recycle": 60016,
+  "pinboard": 60093,
+  "zoom-minus": 60082,
+  "zoom-plus": 60083,
+  "check": 60084,
+  "asterisk": 60085,
+  "hashtag": 60086,
+  "checkbox-active": 59778,
+  "checkbox-passive": 59779,
+  "radio-btn-active": 59780,
+  "radio-btn-passive": 59781,
+  "shopping-bag-1": 60011,
+  "shopping-bag": 60012,
+  "shopping-barcode": 60017,
+  "shopping-basket-add": 60018,
+  "shopping-basket-remove": 60019,
+  "shopping-basket": 60020,
+  "shopping-package": 60021,
+  "shopping-pos-machine": 60022,
+  "shopping-sale": 60023,
+  "shopping-store": 60024,
+  "angle-dobule-down": 59748,
+  "angle-dobule-left": 59749,
+  "angle-dobule-right": 59750,
+  "angle-dobule-up": 59751,
+  "angle-down": 59752,
+  "angle-left": 59753,
+  "angle-right": 59754,
+  "angle-up": 59755,
+  "arrow-down-l": 59756,
+  "arrow-down": 59757,
+  "arrow-expand": 59758,
+  "arrow-h": 59759,
+  "arrow-left-l": 59760,
+  "arrow-left": 59761,
+  "arrow-move": 59762,
+  "arrow-resize": 59763,
+  "arrow-return-left": 59764,
+  "arrow-return-right": 59765,
+  "arrow-right-l": 59766,
+  "arrow-right": 59767,
+  "arrow-swap": 59768,
+  "arrow-up-l": 59769,
+  "arrow-up": 59770,
+  "arrow-v": 59771,
+  "caret-down": 59772,
+  "caret-left": 59773,
+  "caret-right": 59774,
+  "caret-up": 59775,
+  "fi": 59776,
+  "fontisto": 59777,
+  "backward": 59866,
+  "eject": 59867,
+  "equalizer": 59868,
+  "forward": 59869,
+  "headphone": 59870,
+  "heart": 59871,
+  "mic": 59872,
+  "music-note": 59873,
+  "pause": 59874,
+  "play-list": 59875,
+  "play": 59876,
+  "player-settings": 59877,
+  "podcast": 59878,
+  "random": 59879,
+  "record": 59880,
+  "star": 59881,
+  "step-backwrad": 59882,
+  "step-forward": 59883,
+  "stop": 59884,
+  "volume-down": 59885,
+  "volume-mute": 59886,
+  "volume-off": 59887,
+  "volume-up": 59888,
+  "airplay": 60008,
+  "bold": 59918,
+  "broken-link": 59919,
+  "center-align": 59920,
+  "close": 59921,
+  "columns": 59922,
+  "copy": 59923,
+  "eraser": 59924,
+  "export": 59925,
+  "file-1": 59926,
+  "file-2": 59927,
+  "folder": 59928,
+  "font": 59929,
+  "import": 59930,
+  "indent": 59931,
+  "italic": 59932,
+  "justify": 59933,
+  "left-align": 59934,
+  "link2": 59935,
+  "list-1": 59936,
+  "list-2": 59937,
+  "outdent": 59938,
+  "paperclip": 59939,
+  "paragraph": 59940,
+  "paste": 59941,
+  "preview": 59942,
+  "print2": 59943,
+  "redo": 59944,
+  "right-align": 59945,
+  "save-1": 59946,
+  "save": 59947,
+  "scissors2": 59948,
+  "strikethrough": 59949,
+  "subscript": 59950,
+  "superscript": 59951,
+  "table-1": 59952,
+  "table-2": 59953,
+  "text-height": 59954,
+  "text-width": 59955,
+  "underline": 59956,
+  "undo": 59957,
+  "cloud-down": 59958,
+  "cloud-refresh": 59959,
+  "cloud-up": 59960,
+  "cloudy-gusts": 59961,
+  "cloudy": 59962,
+  "compass": 59963,
+  "day-cloudy": 59964,
+  "day-haze": 59965,
+  "day-lightning": 59966,
+  "day-rain": 59967,
+  "day-snow": 59968,
+  "day-sunny": 59969,
+  "fog": 59970,
+  "horizon-alt": 59971,
+  "horizon": 59972,
+  "lightning": 59973,
+  "lightnings": 59974,
+  "night-alt-cloudy": 59975,
+  "night-alt-lightning": 59976,
+  "night-alt-rain": 59977,
+  "night-alt-snow": 59978,
+  "night-clear": 59979,
+  "rain": 59980,
+  "rainbow": 59981,
+  "rains": 59982,
+  "snow": 59983,
+  "snows": 59984,
+  "thermometer": 59985,
+  "umbrella": 59986,
+  "wind": 59987,
+  "confused": 59988,
+  "dizzy": 59989,
+  "expressionless": 59990,
+  "frowning": 59991,
+  "heart-eyes": 59992,
+  "laughing": 59993,
+  "mad": 59994,
+  "nervous": 59995,
+  "neutral": 59996,
+  "open-mouth": 59997,
+  "rage": 59998,
+  "slightly-smile": 59999,
+  "smiley": 60000,
+  "smiling": 60001,
+  "stuck-out-tongue": 60002,
+  "sunglasses": 60003,
+  "surprised": 60004,
+  "tongue": 60005,
+  "wink": 60006,
+  "zipper-mouth": 60007,
+  "aids": 60233,
+  "ambulance": 60234,
+  "bandage": 60235,
+  "bed-patient": 60236,
+  "blood-drop": 60237,
+  "blood-test": 60238,
+  "blood": 60239,
+  "dna": 60240,
+  "doctor": 60241,
+  "drug-pack": 60242,
+  "first-aid-alt": 60243,
+  "heart-alt": 60244,
+  "heartbeat-alt": 60245,
+  "heartbeat": 60246,
+  "helicopter-ambulance": 60247,
+  "hospital": 60248,
+  "injection-syringe": 60249,
+  "laboratory": 60250,
+  "nurse": 60251,
+  "nursing-home": 60252,
+  "paralysis-disability": 60253,
+  "pills": 60254,
+  "prescription": 60255,
+  "pulse": 60256,
+  "stethoscope": 60257,
+  "surgical-knife": 60258,
+  "tablets": 60259,
+  "test-bottle": 60260,
+  "test-tube-alt": 60261,
+  "test-tube": 60262,
+  "thermometer-alt": 60263,
+  "american-express": 59856,
+  "credit-card": 59857,
+  "google-wallet": 59858,
+  "iyzigo": 59859,
+  "mastercard": 59860,
+  "paypal-p": 59861,
+  "paypal": 59862,
+  "payu": 59863,
+  "troy": 59864,
+  "visa": 59865,
+  "dinners-club": 60010,
+  "apple-pay": 60009,
+  "discover": 60013,
+  "jcb": 60014,
+  "dislike": 59796,
+  "like": 59797,
+  "audio-description": 59648,
+  "blind": 59649,
+  "braille": 59650,
+  "deaf": 59651,
+  "fa-american-sign-language-interpreting": 59652,
+  "low-vision": 59654,
+  "tty": 59655,
+  "universal-acces": 59656,
+  "wheelchair": 59657,
+  "area-chart": 59732,
+  "bar-chart": 59733,
+  "line-chart": 59734,
+  "pie-chart-1": 59735,
+  "pie-chart-2": 59736,
+  "chrome": 59726,
+  "edge": 59727,
+  "firefox": 59728,
+  "internet-explorer": 59729,
+  "opera": 59730,
+  "safari": 59731,
+  "bitcoin": 59737,
+  "dollar": 59738,
+  "euro": 59739,
+  "gbp": 59740,
+  "gg": 59741,
+  "ils": 59742,
+  "inr": 59743,
+  "krw": 59744,
+  "rouble": 59745,
+  "tl": 59746,
+  "yen": 59747,
+  "genderless": 59782,
+  "intersex": 59783,
+  "mars-double": 59784,
+  "mars-stroke-h": 59785,
+  "mars-stroke-v": 59786,
+  "mars-stroke": 59787,
+  "mars": 59788,
+  "mercury": 59789,
+  "neuter": 59790,
+  "transgender-alt": 59791,
+  "transgender": 59792,
+  "venus-double": 59793,
+  "venus-mars": 59794,
+  "venus": 59795,
+  "automobile": 59899,
+  "bicycle": 59900,
+  "bus": 59901,
+  "car": 59902,
+  "helicopter": 59903,
+  "metro": 59904,
+  "motorcycle": 59905,
+  "plane": 59906,
+  "rocket": 59907,
+  "ship": 59908,
+  "subway": 59909,
+  "taxi": 59910,
+  "train": 59911,
+  "truck": 59912,
+  "yacht": 59913,
+  "beach-slipper": 60203,
+  "bus-ticket": 60204,
+  "cocktail": 60205,
+  "compass-alt": 60206,
+  "direction-sign": 60207,
+  "do-not-disturb": 60208,
+  "flotation-ring": 60209,
+  "holiday-village": 60210,
+  "hot-air-balloon": 60211,
+  "hotel-alt": 60212,
+  "hotel": 60213,
+  "island": 60214,
+  "money-symbol": 60215,
+  "parasol": 60216,
+  "passport-alt": 60217,
+  "passport": 60218,
+  "photograph": 60219,
+  "plane-ticket": 60220,
+  "room": 60221,
+  "sait-boat": 60222,
+  "snorkel": 60223,
+  "suitcase-alt": 60224,
+  "suitcase": 60225,
+  "sun": 60226,
+  "sunglasses-alt": 60227,
+  "swimsuit": 60228,
+  "tent": 60229,
+  "ticket-alt": 60230,
+  "train-ticket": 60231,
+  "wallet": 60232,
+  "circle-o-notch": 59889,
+  "propeller-1": 59890,
+  "propeller-2": 59891,
+  "propeller-3": 59892,
+  "propeller-4": 59893,
+  "spinner-cog": 59894,
+  "spinner-fidget": 59895,
+  "spinner-refresh": 59896,
+  "spinner-rotate-forward": 59897,
+  "spinner": 59898,
+  "snowflake": 60081,
+  "snowflake-1": 60073,
+  "snowflake-2": 60074,
+  "snowflake-3": 60075,
+  "snowflake-4": 60076,
+  "snowflake-5": 60077,
+  "snowflake-6": 60078,
+  "snowflake-7": 60079,
+  "snowflake-8": 60080,
+  "curve": 59915,
+  "ellipse": 59916,
+  "rectangle": 59917,
+  "shield": 59914
+}

+ 285 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_foundation.json

@@ -0,0 +1,285 @@
+{
+  "address-book": 61696,
+  "alert": 61697,
+  "align-center": 61698,
+  "align-justify": 61699,
+  "align-left": 61700,
+  "align-right": 61701,
+  "anchor": 61702,
+  "annotate": 61703,
+  "archive": 61704,
+  "arrow-down": 61705,
+  "arrow-left": 61706,
+  "arrow-right": 61707,
+  "arrow-up": 61708,
+  "arrows-compress": 61709,
+  "arrows-expand": 61710,
+  "arrows-in": 61711,
+  "arrows-out": 61712,
+  "asl": 61713,
+  "asterisk": 61714,
+  "at-sign": 61715,
+  "background-color": 61716,
+  "battery-empty": 61717,
+  "battery-full": 61718,
+  "battery-half": 61719,
+  "bitcoin-circle": 61720,
+  "bitcoin": 61721,
+  "blind": 61722,
+  "bluetooth": 61723,
+  "bold": 61724,
+  "book-bookmark": 61725,
+  "book": 61726,
+  "bookmark": 61727,
+  "braille": 61728,
+  "burst-new": 61729,
+  "burst-sale": 61730,
+  "burst": 61731,
+  "calendar": 61732,
+  "camera": 61733,
+  "check": 61734,
+  "checkbox": 61735,
+  "clipboard-notes": 61736,
+  "clipboard-pencil": 61737,
+  "clipboard": 61738,
+  "clock": 61739,
+  "closed-caption": 61740,
+  "cloud": 61741,
+  "comment-minus": 61742,
+  "comment-quotes": 61743,
+  "comment-video": 61744,
+  "comment": 61745,
+  "comments": 61746,
+  "compass": 61747,
+  "contrast": 61748,
+  "credit-card": 61749,
+  "crop": 61750,
+  "crown": 61751,
+  "css3": 61752,
+  "database": 61753,
+  "die-five": 61754,
+  "die-four": 61755,
+  "die-one": 61756,
+  "die-six": 61757,
+  "die-three": 61758,
+  "die-two": 61759,
+  "dislike": 61760,
+  "dollar-bill": 61761,
+  "dollar": 61762,
+  "download": 61763,
+  "eject": 61764,
+  "elevator": 61765,
+  "euro": 61766,
+  "eye": 61767,
+  "fast-forward": 61768,
+  "female-symbol": 61769,
+  "female": 61770,
+  "filter": 61771,
+  "first-aid": 61772,
+  "flag": 61773,
+  "folder-add": 61774,
+  "folder-lock": 61775,
+  "folder": 61776,
+  "foot": 61777,
+  "foundation": 61778,
+  "graph-bar": 61779,
+  "graph-horizontal": 61780,
+  "graph-pie": 61781,
+  "graph-trend": 61782,
+  "guide-dog": 61783,
+  "hearing-aid": 61784,
+  "heart": 61785,
+  "home": 61786,
+  "html5": 61787,
+  "indent-less": 61788,
+  "indent-more": 61789,
+  "info": 61790,
+  "italic": 61791,
+  "key": 61792,
+  "laptop": 61793,
+  "layout": 61794,
+  "lightbulb": 61795,
+  "like": 61796,
+  "link": 61797,
+  "list-bullet": 61798,
+  "list-number": 61799,
+  "list-thumbnails": 61800,
+  "list": 61801,
+  "lock": 61802,
+  "loop": 61803,
+  "magnifying-glass": 61804,
+  "mail": 61805,
+  "male-female": 61806,
+  "male-symbol": 61807,
+  "male": 61808,
+  "map": 61809,
+  "marker": 61810,
+  "megaphone": 61811,
+  "microphone": 61812,
+  "minus-circle": 61813,
+  "minus": 61814,
+  "mobile-signal": 61815,
+  "mobile": 61816,
+  "monitor": 61817,
+  "mountains": 61818,
+  "music": 61819,
+  "next": 61820,
+  "no-dogs": 61821,
+  "no-smoking": 61822,
+  "page-add": 61823,
+  "page-copy": 61824,
+  "page-csv": 61825,
+  "page-delete": 61826,
+  "page-doc": 61827,
+  "page-edit": 61828,
+  "page-export-csv": 61829,
+  "page-export-doc": 61830,
+  "page-export-pdf": 61831,
+  "page-export": 61832,
+  "page-filled": 61833,
+  "page-multiple": 61834,
+  "page-pdf": 61835,
+  "page-remove": 61836,
+  "page-search": 61837,
+  "page": 61838,
+  "paint-bucket": 61839,
+  "paperclip": 61840,
+  "pause": 61841,
+  "paw": 61842,
+  "paypal": 61843,
+  "pencil": 61844,
+  "photo": 61845,
+  "play-circle": 61846,
+  "play-video": 61847,
+  "play": 61848,
+  "plus": 61849,
+  "pound": 61850,
+  "power": 61851,
+  "previous": 61852,
+  "price-tag": 61853,
+  "pricetag-multiple": 61854,
+  "print": 61855,
+  "prohibited": 61856,
+  "projection-screen": 61857,
+  "puzzle": 61858,
+  "quote": 61859,
+  "record": 61860,
+  "refresh": 61861,
+  "results-demographics": 61862,
+  "results": 61863,
+  "rewind-ten": 61864,
+  "rewind": 61865,
+  "rss": 61866,
+  "safety-cone": 61867,
+  "save": 61868,
+  "share": 61869,
+  "sheriff-badge": 61870,
+  "shield": 61871,
+  "shopping-bag": 61872,
+  "shopping-cart": 61873,
+  "shuffle": 61874,
+  "skull": 61875,
+  "social-500px": 61876,
+  "social-adobe": 61877,
+  "social-amazon": 61878,
+  "social-android": 61879,
+  "social-apple": 61880,
+  "social-behance": 61881,
+  "social-bing": 61882,
+  "social-blogger": 61883,
+  "social-delicious": 61884,
+  "social-designer-news": 61885,
+  "social-deviant-art": 61886,
+  "social-digg": 61887,
+  "social-dribbble": 61888,
+  "social-drive": 61889,
+  "social-dropbox": 61890,
+  "social-evernote": 61891,
+  "social-facebook": 61892,
+  "social-flickr": 61893,
+  "social-forrst": 61894,
+  "social-foursquare": 61895,
+  "social-game-center": 61896,
+  "social-github": 61897,
+  "social-google-plus": 61898,
+  "social-hacker-news": 61899,
+  "social-hi5": 61900,
+  "social-instagram": 61901,
+  "social-joomla": 61902,
+  "social-lastfm": 61903,
+  "social-linkedin": 61904,
+  "social-medium": 61905,
+  "social-myspace": 61906,
+  "social-orkut": 61907,
+  "social-path": 61908,
+  "social-picasa": 61909,
+  "social-pinterest": 61910,
+  "social-rdio": 61911,
+  "social-reddit": 61912,
+  "social-skillshare": 61913,
+  "social-skype": 61914,
+  "social-smashing-mag": 61915,
+  "social-snapchat": 61916,
+  "social-spotify": 61917,
+  "social-squidoo": 61918,
+  "social-stack-overflow": 61919,
+  "social-steam": 61920,
+  "social-stumbleupon": 61921,
+  "social-treehouse": 61922,
+  "social-tumblr": 61923,
+  "social-twitter": 61924,
+  "social-vimeo": 61925,
+  "social-windows": 61926,
+  "social-xbox": 61927,
+  "social-yahoo": 61928,
+  "social-yelp": 61929,
+  "social-youtube": 61930,
+  "social-zerply": 61931,
+  "social-zurb": 61932,
+  "sound": 61933,
+  "star": 61934,
+  "stop": 61935,
+  "strikethrough": 61936,
+  "subscript": 61937,
+  "superscript": 61938,
+  "tablet-landscape": 61939,
+  "tablet-portrait": 61940,
+  "target-two": 61941,
+  "target": 61942,
+  "telephone-accessible": 61943,
+  "telephone": 61944,
+  "text-color": 61945,
+  "thumbnails": 61946,
+  "ticket": 61947,
+  "torso-business": 61948,
+  "torso-female": 61949,
+  "torso": 61950,
+  "torsos-all-female": 61951,
+  "torsos-all": 61952,
+  "torsos-female-male": 61953,
+  "torsos-male-female": 61954,
+  "torsos": 61955,
+  "trash": 61956,
+  "trees": 61957,
+  "trophy": 61958,
+  "underline": 61959,
+  "universal-access": 61960,
+  "unlink": 61961,
+  "unlock": 61962,
+  "upload-cloud": 61963,
+  "upload": 61964,
+  "usb": 61965,
+  "video": 61966,
+  "volume-none": 61967,
+  "volume-strike": 61968,
+  "volume": 61969,
+  "web": 61970,
+  "wheelchair": 61971,
+  "widget": 61972,
+  "wrench": 61973,
+  "x-circle": 61974,
+  "x": 61975,
+  "yen": 61976,
+  "zoom-in": 61977,
+  "zoom-out": 61978
+}

+ 3683 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_ionicons.json

@@ -0,0 +1,3683 @@
+{
+  "add": 61696,
+  "add-circle": 61697,
+  "add-circle-outline": 61698,
+  "add-circle-sharp": 61699,
+  "add-outline": 61700,
+  "add-sharp": 61701,
+  "airplane": 61702,
+  "airplane-outline": 61703,
+  "airplane-sharp": 61704,
+  "alarm": 61705,
+  "alarm-outline": 61706,
+  "alarm-sharp": 61707,
+  "albums": 61708,
+  "albums-outline": 61709,
+  "albums-sharp": 61710,
+  "alert": 61711,
+  "alert-circle": 61712,
+  "alert-circle-outline": 61713,
+  "alert-circle-sharp": 61714,
+  "alert-outline": 61715,
+  "alert-sharp": 61716,
+  "american-football": 61717,
+  "american-football-outline": 61718,
+  "american-football-sharp": 61719,
+  "analytics": 61720,
+  "analytics-outline": 61721,
+  "analytics-sharp": 61722,
+  "aperture": 61723,
+  "aperture-outline": 61724,
+  "aperture-sharp": 61725,
+  "apps": 61726,
+  "apps-outline": 61727,
+  "apps-sharp": 61728,
+  "archive": 61729,
+  "archive-outline": 61730,
+  "archive-sharp": 61731,
+  "arrow-back": 61732,
+  "arrow-back-circle": 61733,
+  "arrow-back-circle-outline": 61734,
+  "arrow-back-circle-sharp": 61735,
+  "arrow-back-outline": 61736,
+  "arrow-back-sharp": 61737,
+  "arrow-down": 61738,
+  "arrow-down-circle": 61739,
+  "arrow-down-circle-outline": 61740,
+  "arrow-down-circle-sharp": 61741,
+  "arrow-down-outline": 61742,
+  "arrow-down-sharp": 61743,
+  "arrow-forward": 61744,
+  "arrow-forward-circle": 61745,
+  "arrow-forward-circle-outline": 61746,
+  "arrow-forward-circle-sharp": 61747,
+  "arrow-forward-outline": 61748,
+  "arrow-forward-sharp": 61749,
+  "arrow-redo": 61750,
+  "arrow-redo-circle": 61751,
+  "arrow-redo-circle-outline": 61752,
+  "arrow-redo-circle-sharp": 61753,
+  "arrow-redo-outline": 61754,
+  "arrow-redo-sharp": 61755,
+  "arrow-undo": 61756,
+  "arrow-undo-circle": 61757,
+  "arrow-undo-circle-outline": 61758,
+  "arrow-undo-circle-sharp": 61759,
+  "arrow-undo-outline": 61760,
+  "arrow-undo-sharp": 61761,
+  "arrow-up": 61762,
+  "arrow-up-circle": 61763,
+  "arrow-up-circle-outline": 61764,
+  "arrow-up-circle-sharp": 61765,
+  "arrow-up-outline": 61766,
+  "arrow-up-sharp": 61767,
+  "at": 61768,
+  "at-circle": 61769,
+  "at-circle-outline": 61770,
+  "at-circle-sharp": 61771,
+  "at-outline": 61772,
+  "at-sharp": 61773,
+  "attach": 61774,
+  "attach-outline": 61775,
+  "attach-sharp": 61776,
+  "backspace": 61777,
+  "backspace-outline": 61778,
+  "backspace-sharp": 61779,
+  "bandage": 61780,
+  "bandage-outline": 61781,
+  "bandage-sharp": 61782,
+  "bar-chart": 61783,
+  "bar-chart-outline": 61784,
+  "bar-chart-sharp": 61785,
+  "barbell": 61786,
+  "barbell-outline": 61787,
+  "barbell-sharp": 61788,
+  "barcode": 61789,
+  "barcode-outline": 61790,
+  "barcode-sharp": 61791,
+  "baseball": 61792,
+  "baseball-outline": 61793,
+  "baseball-sharp": 61794,
+  "basket": 61795,
+  "basket-outline": 61796,
+  "basket-sharp": 61797,
+  "basketball": 61798,
+  "basketball-outline": 61799,
+  "basketball-sharp": 61800,
+  "battery-charging": 61801,
+  "battery-charging-outline": 61802,
+  "battery-charging-sharp": 61803,
+  "battery-dead": 61804,
+  "battery-dead-outline": 61805,
+  "battery-dead-sharp": 61806,
+  "battery-full": 61807,
+  "battery-full-outline": 61808,
+  "battery-full-sharp": 61809,
+  "battery-half": 61810,
+  "battery-half-outline": 61811,
+  "battery-half-sharp": 61812,
+  "beaker": 61813,
+  "beaker-outline": 61814,
+  "beaker-sharp": 61815,
+  "bed": 61816,
+  "bed-outline": 61817,
+  "bed-sharp": 61818,
+  "beer": 61819,
+  "beer-outline": 61820,
+  "beer-sharp": 61821,
+  "bicycle": 61822,
+  "bicycle-outline": 61823,
+  "bicycle-sharp": 61824,
+  "bluetooth": 61825,
+  "bluetooth-outline": 61826,
+  "bluetooth-sharp": 61827,
+  "boat": 61828,
+  "boat-outline": 61829,
+  "boat-sharp": 61830,
+  "body": 61831,
+  "body-outline": 61832,
+  "body-sharp": 61833,
+  "bonfire": 61834,
+  "bonfire-outline": 61835,
+  "bonfire-sharp": 61836,
+  "book": 61837,
+  "book-outline": 61838,
+  "book-sharp": 61839,
+  "bookmark": 61840,
+  "bookmark-outline": 61841,
+  "bookmark-sharp": 61842,
+  "bookmarks": 61843,
+  "bookmarks-outline": 61844,
+  "bookmarks-sharp": 61845,
+  "briefcase": 61846,
+  "briefcase-outline": 61847,
+  "briefcase-sharp": 61848,
+  "browsers": 61849,
+  "browsers-outline": 61850,
+  "browsers-sharp": 61851,
+  "brush": 61852,
+  "brush-outline": 61853,
+  "brush-sharp": 61854,
+  "bug": 61855,
+  "bug-outline": 61856,
+  "bug-sharp": 61857,
+  "build": 61858,
+  "build-outline": 61859,
+  "build-sharp": 61860,
+  "bulb": 61861,
+  "bulb-outline": 61862,
+  "bulb-sharp": 61863,
+  "bus": 61864,
+  "bus-outline": 61865,
+  "bus-sharp": 61866,
+  "business": 61867,
+  "business-outline": 61868,
+  "business-sharp": 61869,
+  "cafe": 61870,
+  "cafe-outline": 61871,
+  "cafe-sharp": 61872,
+  "calculator": 61873,
+  "calculator-outline": 61874,
+  "calculator-sharp": 61875,
+  "calendar": 61876,
+  "calendar-outline": 61877,
+  "calendar-sharp": 61878,
+  "call": 61879,
+  "call-outline": 61880,
+  "call-sharp": 61881,
+  "camera": 61882,
+  "camera-outline": 61883,
+  "camera-reverse": 61884,
+  "camera-reverse-outline": 61885,
+  "camera-reverse-sharp": 61886,
+  "camera-sharp": 61887,
+  "car": 61888,
+  "car-outline": 61889,
+  "car-sharp": 61890,
+  "car-sport": 61891,
+  "car-sport-outline": 61892,
+  "car-sport-sharp": 61893,
+  "card": 61894,
+  "card-outline": 61895,
+  "card-sharp": 61896,
+  "caret-back": 61897,
+  "caret-back-circle": 61898,
+  "caret-back-circle-outline": 61899,
+  "caret-back-circle-sharp": 61900,
+  "caret-back-outline": 61901,
+  "caret-back-sharp": 61902,
+  "caret-down": 61903,
+  "caret-down-circle": 61904,
+  "caret-down-circle-outline": 61905,
+  "caret-down-circle-sharp": 61906,
+  "caret-down-outline": 61907,
+  "caret-down-sharp": 61908,
+  "caret-forward": 61909,
+  "caret-forward-circle": 61910,
+  "caret-forward-circle-outline": 61911,
+  "caret-forward-circle-sharp": 61912,
+  "caret-forward-outline": 61913,
+  "caret-forward-sharp": 61914,
+  "caret-up": 61915,
+  "caret-up-circle": 61916,
+  "caret-up-circle-outline": 61917,
+  "caret-up-circle-sharp": 61918,
+  "caret-up-outline": 61919,
+  "caret-up-sharp": 61920,
+  "cart": 61921,
+  "cart-outline": 61922,
+  "cart-sharp": 61923,
+  "cash": 61924,
+  "cash-outline": 61925,
+  "cash-sharp": 61926,
+  "cellular": 61927,
+  "cellular-outline": 61928,
+  "cellular-sharp": 61929,
+  "chatbox": 61930,
+  "chatbox-ellipses": 61931,
+  "chatbox-ellipses-outline": 61932,
+  "chatbox-ellipses-sharp": 61933,
+  "chatbox-outline": 61934,
+  "chatbox-sharp": 61935,
+  "chatbubble": 61936,
+  "chatbubble-ellipses": 61937,
+  "chatbubble-ellipses-outline": 61938,
+  "chatbubble-ellipses-sharp": 61939,
+  "chatbubble-outline": 61940,
+  "chatbubble-sharp": 61941,
+  "chatbubbles": 61942,
+  "chatbubbles-outline": 61943,
+  "chatbubbles-sharp": 61944,
+  "checkbox": 61945,
+  "checkbox-outline": 61946,
+  "checkbox-sharp": 61947,
+  "checkmark": 61948,
+  "checkmark-circle": 61949,
+  "checkmark-circle-outline": 61950,
+  "checkmark-circle-sharp": 61951,
+  "checkmark-done": 61952,
+  "checkmark-done-circle": 61953,
+  "checkmark-done-circle-outline": 61954,
+  "checkmark-done-circle-sharp": 61955,
+  "checkmark-done-outline": 61956,
+  "checkmark-done-sharp": 61957,
+  "checkmark-outline": 61958,
+  "checkmark-sharp": 61959,
+  "chevron-back": 61960,
+  "chevron-back-circle": 61961,
+  "chevron-back-circle-outline": 61962,
+  "chevron-back-circle-sharp": 61963,
+  "chevron-back-outline": 61964,
+  "chevron-back-sharp": 61965,
+  "chevron-down": 61966,
+  "chevron-down-circle": 61967,
+  "chevron-down-circle-outline": 61968,
+  "chevron-down-circle-sharp": 61969,
+  "chevron-down-outline": 61970,
+  "chevron-down-sharp": 61971,
+  "chevron-forward": 61972,
+  "chevron-forward-circle": 61973,
+  "chevron-forward-circle-outline": 61974,
+  "chevron-forward-circle-sharp": 61975,
+  "chevron-forward-outline": 61976,
+  "chevron-forward-sharp": 61977,
+  "chevron-up": 61978,
+  "chevron-up-circle": 61979,
+  "chevron-up-circle-outline": 61980,
+  "chevron-up-circle-sharp": 61981,
+  "chevron-up-outline": 61982,
+  "chevron-up-sharp": 61983,
+  "clipboard": 61984,
+  "clipboard-outline": 61985,
+  "clipboard-sharp": 61986,
+  "close": 61987,
+  "close-circle": 61988,
+  "close-circle-outline": 61989,
+  "close-circle-sharp": 61990,
+  "close-outline": 61991,
+  "close-sharp": 61992,
+  "cloud": 61993,
+  "cloud-circle": 61994,
+  "cloud-circle-outline": 61995,
+  "cloud-circle-sharp": 61996,
+  "cloud-done": 61997,
+  "cloud-done-outline": 61998,
+  "cloud-done-sharp": 61999,
+  "cloud-download": 62000,
+  "cloud-download-outline": 62001,
+  "cloud-download-sharp": 62002,
+  "cloud-offline": 62003,
+  "cloud-offline-outline": 62004,
+  "cloud-offline-sharp": 62005,
+  "cloud-outline": 62006,
+  "cloud-sharp": 62007,
+  "cloud-upload": 62008,
+  "cloud-upload-outline": 62009,
+  "cloud-upload-sharp": 62010,
+  "cloudy": 62011,
+  "cloudy-night": 62012,
+  "cloudy-night-outline": 62013,
+  "cloudy-night-sharp": 62014,
+  "cloudy-outline": 62015,
+  "cloudy-sharp": 62016,
+  "code": 62017,
+  "code-download": 62018,
+  "code-download-outline": 62019,
+  "code-download-sharp": 62020,
+  "code-outline": 62021,
+  "code-sharp": 62022,
+  "code-slash": 62023,
+  "code-slash-outline": 62024,
+  "code-slash-sharp": 62025,
+  "code-working": 62026,
+  "code-working-outline": 62027,
+  "code-working-sharp": 62028,
+  "cog": 62029,
+  "cog-outline": 62030,
+  "cog-sharp": 62031,
+  "color-fill": 62032,
+  "color-fill-outline": 62033,
+  "color-fill-sharp": 62034,
+  "color-filter": 62035,
+  "color-filter-outline": 62036,
+  "color-filter-sharp": 62037,
+  "color-palette": 62038,
+  "color-palette-outline": 62039,
+  "color-palette-sharp": 62040,
+  "color-wand": 62041,
+  "color-wand-outline": 62042,
+  "color-wand-sharp": 62043,
+  "compass": 62044,
+  "compass-outline": 62045,
+  "compass-sharp": 62046,
+  "construct": 62047,
+  "construct-outline": 62048,
+  "construct-sharp": 62049,
+  "contract": 62050,
+  "contract-outline": 62051,
+  "contract-sharp": 62052,
+  "contrast": 62053,
+  "contrast-outline": 62054,
+  "contrast-sharp": 62055,
+  "copy": 62056,
+  "copy-outline": 62057,
+  "copy-sharp": 62058,
+  "create": 62059,
+  "create-outline": 62060,
+  "create-sharp": 62061,
+  "crop": 62062,
+  "crop-outline": 62063,
+  "crop-sharp": 62064,
+  "cube": 62065,
+  "cube-outline": 62066,
+  "cube-sharp": 62067,
+  "cut": 62068,
+  "cut-outline": 62069,
+  "cut-sharp": 62070,
+  "desktop": 62071,
+  "desktop-outline": 62072,
+  "desktop-sharp": 62073,
+  "disc": 62074,
+  "disc-outline": 62075,
+  "disc-sharp": 62076,
+  "document": 62077,
+  "document-attach": 62078,
+  "document-attach-outline": 62079,
+  "document-attach-sharp": 62080,
+  "document-outline": 62081,
+  "document-sharp": 62082,
+  "document-text": 62083,
+  "document-text-outline": 62084,
+  "document-text-sharp": 62085,
+  "documents": 62086,
+  "documents-outline": 62087,
+  "documents-sharp": 62088,
+  "download": 62089,
+  "download-outline": 62090,
+  "download-sharp": 62091,
+  "duplicate": 62092,
+  "duplicate-outline": 62093,
+  "duplicate-sharp": 62094,
+  "ear": 62095,
+  "ear-outline": 62096,
+  "ear-sharp": 62097,
+  "earth": 62098,
+  "earth-outline": 62099,
+  "earth-sharp": 62100,
+  "easel": 62101,
+  "easel-outline": 62102,
+  "easel-sharp": 62103,
+  "egg": 62104,
+  "egg-outline": 62105,
+  "egg-sharp": 62106,
+  "ellipse": 62107,
+  "ellipse-outline": 62108,
+  "ellipse-sharp": 62109,
+  "ellipsis-horizontal": 62110,
+  "ellipsis-horizontal-circle": 62111,
+  "ellipsis-horizontal-circle-outline": 62112,
+  "ellipsis-horizontal-circle-sharp": 62113,
+  "ellipsis-horizontal-outline": 62114,
+  "ellipsis-horizontal-sharp": 62115,
+  "ellipsis-vertical": 62116,
+  "ellipsis-vertical-circle": 62117,
+  "ellipsis-vertical-circle-outline": 62118,
+  "ellipsis-vertical-circle-sharp": 62119,
+  "ellipsis-vertical-outline": 62120,
+  "ellipsis-vertical-sharp": 62121,
+  "enter": 62122,
+  "enter-outline": 62123,
+  "enter-sharp": 62124,
+  "exit": 62125,
+  "exit-outline": 62126,
+  "exit-sharp": 62127,
+  "expand": 62128,
+  "expand-outline": 62129,
+  "expand-sharp": 62130,
+  "eye": 62131,
+  "eye-off": 62132,
+  "eye-off-outline": 62133,
+  "eye-off-sharp": 62134,
+  "eye-outline": 62135,
+  "eye-sharp": 62136,
+  "eyedrop": 62137,
+  "eyedrop-outline": 62138,
+  "eyedrop-sharp": 62139,
+  "fast-food": 62140,
+  "fast-food-outline": 62141,
+  "fast-food-sharp": 62142,
+  "female": 62143,
+  "female-outline": 62144,
+  "female-sharp": 62145,
+  "file-tray": 62146,
+  "file-tray-full": 62147,
+  "file-tray-full-outline": 62148,
+  "file-tray-full-sharp": 62149,
+  "file-tray-outline": 62150,
+  "file-tray-sharp": 62151,
+  "file-tray-stacked": 62152,
+  "file-tray-stacked-outline": 62153,
+  "file-tray-stacked-sharp": 62154,
+  "film": 62155,
+  "film-outline": 62156,
+  "film-sharp": 62157,
+  "filter": 62158,
+  "filter-outline": 62159,
+  "filter-sharp": 62160,
+  "finger-print": 62161,
+  "finger-print-outline": 62162,
+  "finger-print-sharp": 62163,
+  "fitness": 62164,
+  "fitness-outline": 62165,
+  "fitness-sharp": 62166,
+  "flag": 62167,
+  "flag-outline": 62168,
+  "flag-sharp": 62169,
+  "flame": 62170,
+  "flame-outline": 62171,
+  "flame-sharp": 62172,
+  "flash": 62173,
+  "flash-off": 62174,
+  "flash-off-outline": 62175,
+  "flash-off-sharp": 62176,
+  "flash-outline": 62177,
+  "flash-sharp": 62178,
+  "flashlight": 62179,
+  "flashlight-outline": 62180,
+  "flashlight-sharp": 62181,
+  "flask": 62182,
+  "flask-outline": 62183,
+  "flask-sharp": 62184,
+  "flower": 62185,
+  "flower-outline": 62186,
+  "flower-sharp": 62187,
+  "folder": 62188,
+  "folder-open": 62189,
+  "folder-open-outline": 62190,
+  "folder-open-sharp": 62191,
+  "folder-outline": 62192,
+  "folder-sharp": 62193,
+  "football": 62194,
+  "football-outline": 62195,
+  "football-sharp": 62196,
+  "funnel": 62197,
+  "funnel-outline": 62198,
+  "funnel-sharp": 62199,
+  "game-controller": 62200,
+  "game-controller-outline": 62201,
+  "game-controller-sharp": 62202,
+  "gift": 62203,
+  "gift-outline": 62204,
+  "gift-sharp": 62205,
+  "git-branch": 62206,
+  "git-branch-outline": 62207,
+  "git-branch-sharp": 62208,
+  "git-commit": 62209,
+  "git-commit-outline": 62210,
+  "git-commit-sharp": 62211,
+  "git-compare": 62212,
+  "git-compare-outline": 62213,
+  "git-compare-sharp": 62214,
+  "git-merge": 62215,
+  "git-merge-outline": 62216,
+  "git-merge-sharp": 62217,
+  "git-network": 62218,
+  "git-network-outline": 62219,
+  "git-network-sharp": 62220,
+  "git-pull-request": 62221,
+  "git-pull-request-outline": 62222,
+  "git-pull-request-sharp": 62223,
+  "glasses": 62224,
+  "glasses-outline": 62225,
+  "glasses-sharp": 62226,
+  "globe": 62227,
+  "globe-outline": 62228,
+  "globe-sharp": 62229,
+  "golf": 62230,
+  "golf-outline": 62231,
+  "golf-sharp": 62232,
+  "grid": 62233,
+  "grid-outline": 62234,
+  "grid-sharp": 62235,
+  "hammer": 62236,
+  "hammer-outline": 62237,
+  "hammer-sharp": 62238,
+  "hand-left": 62239,
+  "hand-left-outline": 62240,
+  "hand-left-sharp": 62241,
+  "hand-right": 62242,
+  "hand-right-outline": 62243,
+  "hand-right-sharp": 62244,
+  "happy": 62245,
+  "happy-outline": 62246,
+  "happy-sharp": 62247,
+  "hardware-chip": 62248,
+  "hardware-chip-outline": 62249,
+  "hardware-chip-sharp": 62250,
+  "headset": 62251,
+  "headset-outline": 62252,
+  "headset-sharp": 62253,
+  "heart": 62254,
+  "heart-circle": 62255,
+  "heart-circle-outline": 62256,
+  "heart-circle-sharp": 62257,
+  "heart-dislike": 62258,
+  "heart-dislike-circle": 62259,
+  "heart-dislike-circle-outline": 62260,
+  "heart-dislike-circle-sharp": 62261,
+  "heart-dislike-outline": 62262,
+  "heart-dislike-sharp": 62263,
+  "heart-half": 62264,
+  "heart-half-outline": 62265,
+  "heart-half-sharp": 62266,
+  "heart-outline": 62267,
+  "heart-sharp": 62268,
+  "help": 62269,
+  "help-buoy": 62270,
+  "help-buoy-outline": 62271,
+  "help-buoy-sharp": 62272,
+  "help-circle": 62273,
+  "help-circle-outline": 62274,
+  "help-circle-sharp": 62275,
+  "help-outline": 62276,
+  "help-sharp": 62277,
+  "home": 62278,
+  "home-outline": 62279,
+  "home-sharp": 62280,
+  "hourglass": 62281,
+  "hourglass-outline": 62282,
+  "hourglass-sharp": 62283,
+  "ice-cream": 62284,
+  "ice-cream-outline": 62285,
+  "ice-cream-sharp": 62286,
+  "image": 62287,
+  "image-outline": 62288,
+  "image-sharp": 62289,
+  "images": 62290,
+  "images-outline": 62291,
+  "images-sharp": 62292,
+  "infinite": 62293,
+  "infinite-outline": 62294,
+  "infinite-sharp": 62295,
+  "information": 62296,
+  "information-circle": 62297,
+  "information-circle-outline": 62298,
+  "information-circle-sharp": 62299,
+  "information-outline": 62300,
+  "information-sharp": 62301,
+  "journal": 62302,
+  "journal-outline": 62303,
+  "journal-sharp": 62304,
+  "key": 62305,
+  "key-outline": 62306,
+  "key-sharp": 62307,
+  "keypad": 62308,
+  "keypad-outline": 62309,
+  "keypad-sharp": 62310,
+  "language": 62311,
+  "language-outline": 62312,
+  "language-sharp": 62313,
+  "laptop": 62314,
+  "laptop-outline": 62315,
+  "laptop-sharp": 62316,
+  "layers": 62317,
+  "layers-outline": 62318,
+  "layers-sharp": 62319,
+  "leaf": 62320,
+  "leaf-outline": 62321,
+  "leaf-sharp": 62322,
+  "library": 62323,
+  "library-outline": 62324,
+  "library-sharp": 62325,
+  "link": 62326,
+  "link-outline": 62327,
+  "link-sharp": 62328,
+  "list": 62329,
+  "list-circle": 62330,
+  "list-circle-outline": 62331,
+  "list-circle-sharp": 62332,
+  "list-outline": 62333,
+  "list-sharp": 62334,
+  "locate": 62335,
+  "locate-outline": 62336,
+  "locate-sharp": 62337,
+  "location": 62338,
+  "location-outline": 62339,
+  "location-sharp": 62340,
+  "lock-closed": 62341,
+  "lock-closed-outline": 62342,
+  "lock-closed-sharp": 62343,
+  "lock-open": 62344,
+  "lock-open-outline": 62345,
+  "lock-open-sharp": 62346,
+  "log-in": 62347,
+  "log-in-outline": 62348,
+  "log-in-sharp": 62349,
+  "log-out": 62350,
+  "log-out-outline": 62351,
+  "log-out-sharp": 62352,
+  "logo-amazon": 62353,
+  "logo-amplify": 62354,
+  "logo-android": 62355,
+  "logo-angular": 62356,
+  "logo-apple": 62357,
+  "logo-apple-appstore": 62358,
+  "logo-bitbucket": 62359,
+  "logo-bitcoin": 62360,
+  "logo-buffer": 62361,
+  "logo-capacitor": 62362,
+  "logo-chrome": 62363,
+  "logo-closed-captioning": 62364,
+  "logo-codepen": 62365,
+  "logo-css3": 62366,
+  "logo-designernews": 62367,
+  "logo-dribbble": 62368,
+  "logo-dropbox": 62369,
+  "logo-edge": 62370,
+  "logo-electron": 62371,
+  "logo-euro": 62372,
+  "logo-facebook": 62373,
+  "logo-firebase": 62374,
+  "logo-firefox": 62375,
+  "logo-flickr": 62376,
+  "logo-foursquare": 62377,
+  "logo-github": 62378,
+  "logo-google": 62379,
+  "logo-google-playstore": 62380,
+  "logo-hackernews": 62381,
+  "logo-html5": 62382,
+  "logo-instagram": 62383,
+  "logo-ionic": 62384,
+  "logo-ionitron": 62385,
+  "logo-javascript": 62386,
+  "logo-laravel": 62387,
+  "logo-linkedin": 62388,
+  "logo-markdown": 62389,
+  "logo-no-smoking": 62390,
+  "logo-nodejs": 62391,
+  "logo-npm": 62392,
+  "logo-octocat": 62393,
+  "logo-pinterest": 62394,
+  "logo-playstation": 62395,
+  "logo-pwa": 62396,
+  "logo-python": 62397,
+  "logo-react": 62398,
+  "logo-reddit": 62399,
+  "logo-rss": 62400,
+  "logo-sass": 62401,
+  "logo-skype": 62402,
+  "logo-slack": 62403,
+  "logo-snapchat": 62404,
+  "logo-stackoverflow": 62405,
+  "logo-steam": 62406,
+  "logo-stencil": 62407,
+  "logo-tumblr": 62408,
+  "logo-tux": 62409,
+  "logo-twitch": 62410,
+  "logo-twitter": 62411,
+  "logo-usd": 62412,
+  "logo-vimeo": 62413,
+  "logo-vk": 62414,
+  "logo-vue": 62415,
+  "logo-web-component": 62416,
+  "logo-whatsapp": 62417,
+  "logo-windows": 62418,
+  "logo-wordpress": 62419,
+  "logo-xbox": 62420,
+  "logo-xing": 62421,
+  "logo-yahoo": 62422,
+  "logo-yen": 62423,
+  "logo-youtube": 62424,
+  "magnet": 62425,
+  "magnet-outline": 62426,
+  "magnet-sharp": 62427,
+  "mail": 62428,
+  "mail-open": 62429,
+  "mail-open-outline": 62430,
+  "mail-open-sharp": 62431,
+  "mail-outline": 62432,
+  "mail-sharp": 62433,
+  "mail-unread": 62434,
+  "mail-unread-outline": 62435,
+  "mail-unread-sharp": 62436,
+  "male": 62437,
+  "male-female": 62438,
+  "male-female-outline": 62439,
+  "male-female-sharp": 62440,
+  "male-outline": 62441,
+  "male-sharp": 62442,
+  "man": 62443,
+  "man-outline": 62444,
+  "man-sharp": 62445,
+  "map": 62446,
+  "map-outline": 62447,
+  "map-sharp": 62448,
+  "medal": 62449,
+  "medal-outline": 62450,
+  "medal-sharp": 62451,
+  "medical": 62452,
+  "medical-outline": 62453,
+  "medical-sharp": 62454,
+  "medkit": 62455,
+  "medkit-outline": 62456,
+  "medkit-sharp": 62457,
+  "megaphone": 62458,
+  "megaphone-outline": 62459,
+  "megaphone-sharp": 62460,
+  "menu": 62461,
+  "menu-outline": 62462,
+  "menu-sharp": 62463,
+  "mic": 62464,
+  "mic-circle": 62465,
+  "mic-circle-outline": 62466,
+  "mic-circle-sharp": 62467,
+  "mic-off": 62468,
+  "mic-off-circle": 62469,
+  "mic-off-circle-outline": 62470,
+  "mic-off-circle-sharp": 62471,
+  "mic-off-outline": 62472,
+  "mic-off-sharp": 62473,
+  "mic-outline": 62474,
+  "mic-sharp": 62475,
+  "moon": 62476,
+  "moon-outline": 62477,
+  "moon-sharp": 62478,
+  "move": 62479,
+  "move-outline": 62480,
+  "move-sharp": 62481,
+  "musical-note": 62482,
+  "musical-note-outline": 62483,
+  "musical-note-sharp": 62484,
+  "musical-notes": 62485,
+  "musical-notes-outline": 62486,
+  "musical-notes-sharp": 62487,
+  "navigate": 62488,
+  "navigate-circle": 62489,
+  "navigate-circle-outline": 62490,
+  "navigate-circle-sharp": 62491,
+  "navigate-outline": 62492,
+  "navigate-sharp": 62493,
+  "newspaper": 62494,
+  "newspaper-outline": 62495,
+  "newspaper-sharp": 62496,
+  "notifications": 62497,
+  "notifications-circle": 62498,
+  "notifications-circle-outline": 62499,
+  "notifications-circle-sharp": 62500,
+  "notifications-off": 62501,
+  "notifications-off-circle": 62502,
+  "notifications-off-circle-outline": 62503,
+  "notifications-off-circle-sharp": 62504,
+  "notifications-off-outline": 62505,
+  "notifications-off-sharp": 62506,
+  "notifications-outline": 62507,
+  "notifications-sharp": 62508,
+  "nuclear": 62509,
+  "nuclear-outline": 62510,
+  "nuclear-sharp": 62511,
+  "nutrition": 62512,
+  "nutrition-outline": 62513,
+  "nutrition-sharp": 62514,
+  "open": 62515,
+  "open-outline": 62516,
+  "open-sharp": 62517,
+  "options": 62518,
+  "options-outline": 62519,
+  "options-sharp": 62520,
+  "paper-plane": 62521,
+  "paper-plane-outline": 62522,
+  "paper-plane-sharp": 62523,
+  "partly-sunny": 62524,
+  "partly-sunny-outline": 62525,
+  "partly-sunny-sharp": 62526,
+  "pause": 62527,
+  "pause-circle": 62528,
+  "pause-circle-outline": 62529,
+  "pause-circle-sharp": 62530,
+  "pause-outline": 62531,
+  "pause-sharp": 62532,
+  "paw": 62533,
+  "paw-outline": 62534,
+  "paw-sharp": 62535,
+  "pencil": 62536,
+  "pencil-outline": 62537,
+  "pencil-sharp": 62538,
+  "people": 62539,
+  "people-circle": 62540,
+  "people-circle-outline": 62541,
+  "people-circle-sharp": 62542,
+  "people-outline": 62543,
+  "people-sharp": 62544,
+  "person": 62545,
+  "person-add": 62546,
+  "person-add-outline": 62547,
+  "person-add-sharp": 62548,
+  "person-circle": 62549,
+  "person-circle-outline": 62550,
+  "person-circle-sharp": 62551,
+  "person-outline": 62552,
+  "person-remove": 62553,
+  "person-remove-outline": 62554,
+  "person-remove-sharp": 62555,
+  "person-sharp": 62556,
+  "phone-landscape": 62557,
+  "phone-landscape-outline": 62558,
+  "phone-landscape-sharp": 62559,
+  "phone-portrait": 62560,
+  "phone-portrait-outline": 62561,
+  "phone-portrait-sharp": 62562,
+  "pie-chart": 62563,
+  "pie-chart-outline": 62564,
+  "pie-chart-sharp": 62565,
+  "pin": 62566,
+  "pin-outline": 62567,
+  "pin-sharp": 62568,
+  "pint": 62569,
+  "pint-outline": 62570,
+  "pint-sharp": 62571,
+  "pizza": 62572,
+  "pizza-outline": 62573,
+  "pizza-sharp": 62574,
+  "planet": 62575,
+  "planet-outline": 62576,
+  "planet-sharp": 62577,
+  "play": 62578,
+  "play-back": 62579,
+  "play-back-circle": 62580,
+  "play-back-circle-outline": 62581,
+  "play-back-circle-sharp": 62582,
+  "play-back-outline": 62583,
+  "play-back-sharp": 62584,
+  "play-circle": 62585,
+  "play-circle-outline": 62586,
+  "play-circle-sharp": 62587,
+  "play-forward": 62588,
+  "play-forward-circle": 62589,
+  "play-forward-circle-outline": 62590,
+  "play-forward-circle-sharp": 62591,
+  "play-forward-outline": 62592,
+  "play-forward-sharp": 62593,
+  "play-outline": 62594,
+  "play-sharp": 62595,
+  "play-skip-back": 62596,
+  "play-skip-back-circle": 62597,
+  "play-skip-back-circle-outline": 62598,
+  "play-skip-back-circle-sharp": 62599,
+  "play-skip-back-outline": 62600,
+  "play-skip-back-sharp": 62601,
+  "play-skip-forward": 62602,
+  "play-skip-forward-circle": 62603,
+  "play-skip-forward-circle-outline": 62604,
+  "play-skip-forward-circle-sharp": 62605,
+  "play-skip-forward-outline": 62606,
+  "play-skip-forward-sharp": 62607,
+  "podium": 62608,
+  "podium-outline": 62609,
+  "podium-sharp": 62610,
+  "power": 62611,
+  "power-outline": 62612,
+  "power-sharp": 62613,
+  "pricetag": 62614,
+  "pricetag-outline": 62615,
+  "pricetag-sharp": 62616,
+  "pricetags": 62617,
+  "pricetags-outline": 62618,
+  "pricetags-sharp": 62619,
+  "print": 62620,
+  "print-outline": 62621,
+  "print-sharp": 62622,
+  "pulse": 62623,
+  "pulse-outline": 62624,
+  "pulse-sharp": 62625,
+  "push": 62626,
+  "push-outline": 62627,
+  "push-sharp": 62628,
+  "qr-code": 62629,
+  "qr-code-outline": 62630,
+  "qr-code-sharp": 62631,
+  "radio": 62632,
+  "radio-button-off": 62633,
+  "radio-button-off-outline": 62634,
+  "radio-button-off-sharp": 62635,
+  "radio-button-on": 62636,
+  "radio-button-on-outline": 62637,
+  "radio-button-on-sharp": 62638,
+  "radio-outline": 62639,
+  "radio-sharp": 62640,
+  "rainy": 62641,
+  "rainy-outline": 62642,
+  "rainy-sharp": 62643,
+  "reader": 62644,
+  "reader-outline": 62645,
+  "reader-sharp": 62646,
+  "receipt": 62647,
+  "receipt-outline": 62648,
+  "receipt-sharp": 62649,
+  "recording": 62650,
+  "recording-outline": 62651,
+  "recording-sharp": 62652,
+  "refresh": 62653,
+  "refresh-circle": 62654,
+  "refresh-circle-outline": 62655,
+  "refresh-circle-sharp": 62656,
+  "refresh-outline": 62657,
+  "refresh-sharp": 62658,
+  "reload": 62659,
+  "reload-circle": 62660,
+  "reload-circle-outline": 62661,
+  "reload-circle-sharp": 62662,
+  "reload-outline": 62663,
+  "reload-sharp": 62664,
+  "remove": 62665,
+  "remove-circle": 62666,
+  "remove-circle-outline": 62667,
+  "remove-circle-sharp": 62668,
+  "remove-outline": 62669,
+  "remove-sharp": 62670,
+  "reorder-four": 62671,
+  "reorder-four-outline": 62672,
+  "reorder-four-sharp": 62673,
+  "reorder-three": 62674,
+  "reorder-three-outline": 62675,
+  "reorder-three-sharp": 62676,
+  "reorder-two": 62677,
+  "reorder-two-outline": 62678,
+  "reorder-two-sharp": 62679,
+  "repeat": 62680,
+  "repeat-outline": 62681,
+  "repeat-sharp": 62682,
+  "resize": 62683,
+  "resize-outline": 62684,
+  "resize-sharp": 62685,
+  "restaurant": 62686,
+  "restaurant-outline": 62687,
+  "restaurant-sharp": 62688,
+  "return-down-back": 62689,
+  "return-down-back-outline": 62690,
+  "return-down-back-sharp": 62691,
+  "return-down-forward": 62692,
+  "return-down-forward-outline": 62693,
+  "return-down-forward-sharp": 62694,
+  "return-up-back": 62695,
+  "return-up-back-outline": 62696,
+  "return-up-back-sharp": 62697,
+  "return-up-forward": 62698,
+  "return-up-forward-outline": 62699,
+  "return-up-forward-sharp": 62700,
+  "ribbon": 62701,
+  "ribbon-outline": 62702,
+  "ribbon-sharp": 62703,
+  "rocket": 62704,
+  "rocket-outline": 62705,
+  "rocket-sharp": 62706,
+  "rose": 62707,
+  "rose-outline": 62708,
+  "rose-sharp": 62709,
+  "sad": 62710,
+  "sad-outline": 62711,
+  "sad-sharp": 62712,
+  "save": 62713,
+  "save-outline": 62714,
+  "save-sharp": 62715,
+  "scan": 62716,
+  "scan-circle": 62717,
+  "scan-circle-outline": 62718,
+  "scan-circle-sharp": 62719,
+  "scan-outline": 62720,
+  "scan-sharp": 62721,
+  "school": 62722,
+  "school-outline": 62723,
+  "school-sharp": 62724,
+  "search": 62725,
+  "search-circle": 62726,
+  "search-circle-outline": 62727,
+  "search-circle-sharp": 62728,
+  "search-outline": 62729,
+  "search-sharp": 62730,
+  "send": 62731,
+  "send-outline": 62732,
+  "send-sharp": 62733,
+  "server": 62734,
+  "server-outline": 62735,
+  "server-sharp": 62736,
+  "settings": 62737,
+  "settings-outline": 62738,
+  "settings-sharp": 62739,
+  "shapes": 62740,
+  "shapes-outline": 62741,
+  "shapes-sharp": 62742,
+  "share": 62743,
+  "share-outline": 62744,
+  "share-sharp": 62745,
+  "share-social": 62746,
+  "share-social-outline": 62747,
+  "share-social-sharp": 62748,
+  "shield": 62749,
+  "shield-checkmark": 62750,
+  "shield-checkmark-outline": 62751,
+  "shield-checkmark-sharp": 62752,
+  "shield-outline": 62753,
+  "shield-sharp": 62754,
+  "shirt": 62755,
+  "shirt-outline": 62756,
+  "shirt-sharp": 62757,
+  "shuffle": 62758,
+  "shuffle-outline": 62759,
+  "shuffle-sharp": 62760,
+  "skull": 62761,
+  "skull-outline": 62762,
+  "skull-sharp": 62763,
+  "snow": 62764,
+  "snow-outline": 62765,
+  "snow-sharp": 62766,
+  "speedometer": 62767,
+  "speedometer-outline": 62768,
+  "speedometer-sharp": 62769,
+  "square": 62770,
+  "square-outline": 62771,
+  "square-sharp": 62772,
+  "star": 62773,
+  "star-half": 62774,
+  "star-half-outline": 62775,
+  "star-half-sharp": 62776,
+  "star-outline": 62777,
+  "star-sharp": 62778,
+  "stats-chart": 62779,
+  "stats-chart-outline": 62780,
+  "stats-chart-sharp": 62781,
+  "stop": 62782,
+  "stop-circle": 62783,
+  "stop-circle-outline": 62784,
+  "stop-circle-sharp": 62785,
+  "stop-outline": 62786,
+  "stop-sharp": 62787,
+  "stopwatch": 62788,
+  "stopwatch-outline": 62789,
+  "stopwatch-sharp": 62790,
+  "subway": 62791,
+  "subway-outline": 62792,
+  "subway-sharp": 62793,
+  "sunny": 62794,
+  "sunny-outline": 62795,
+  "sunny-sharp": 62796,
+  "swap-horizontal": 62797,
+  "swap-horizontal-outline": 62798,
+  "swap-horizontal-sharp": 62799,
+  "swap-vertical": 62800,
+  "swap-vertical-outline": 62801,
+  "swap-vertical-sharp": 62802,
+  "sync": 62803,
+  "sync-circle": 62804,
+  "sync-circle-outline": 62805,
+  "sync-circle-sharp": 62806,
+  "sync-outline": 62807,
+  "sync-sharp": 62808,
+  "tablet-landscape": 62809,
+  "tablet-landscape-outline": 62810,
+  "tablet-landscape-sharp": 62811,
+  "tablet-portrait": 62812,
+  "tablet-portrait-outline": 62813,
+  "tablet-portrait-sharp": 62814,
+  "tennisball": 62815,
+  "tennisball-outline": 62816,
+  "tennisball-sharp": 62817,
+  "terminal": 62818,
+  "terminal-outline": 62819,
+  "terminal-sharp": 62820,
+  "text": 62821,
+  "text-outline": 62822,
+  "text-sharp": 62823,
+  "thermometer": 62824,
+  "thermometer-outline": 62825,
+  "thermometer-sharp": 62826,
+  "thumbs-down": 62827,
+  "thumbs-down-outline": 62828,
+  "thumbs-down-sharp": 62829,
+  "thumbs-up": 62830,
+  "thumbs-up-outline": 62831,
+  "thumbs-up-sharp": 62832,
+  "thunderstorm": 62833,
+  "thunderstorm-outline": 62834,
+  "thunderstorm-sharp": 62835,
+  "time": 62836,
+  "time-outline": 62837,
+  "time-sharp": 62838,
+  "timer": 62839,
+  "timer-outline": 62840,
+  "timer-sharp": 62841,
+  "today": 62842,
+  "today-outline": 62843,
+  "today-sharp": 62844,
+  "toggle": 62845,
+  "toggle-outline": 62846,
+  "toggle-sharp": 62847,
+  "trail-sign": 62848,
+  "trail-sign-outline": 62849,
+  "trail-sign-sharp": 62850,
+  "train": 62851,
+  "train-outline": 62852,
+  "train-sharp": 62853,
+  "transgender": 62854,
+  "transgender-outline": 62855,
+  "transgender-sharp": 62856,
+  "trash": 62857,
+  "trash-bin": 62858,
+  "trash-bin-outline": 62859,
+  "trash-bin-sharp": 62860,
+  "trash-outline": 62861,
+  "trash-sharp": 62862,
+  "trending-down": 62863,
+  "trending-down-outline": 62864,
+  "trending-down-sharp": 62865,
+  "trending-up": 62866,
+  "trending-up-outline": 62867,
+  "trending-up-sharp": 62868,
+  "triangle": 62869,
+  "triangle-outline": 62870,
+  "triangle-sharp": 62871,
+  "trophy": 62872,
+  "trophy-outline": 62873,
+  "trophy-sharp": 62874,
+  "tv": 62875,
+  "tv-outline": 62876,
+  "tv-sharp": 62877,
+  "umbrella": 62878,
+  "umbrella-outline": 62879,
+  "umbrella-sharp": 62880,
+  "videocam": 62881,
+  "videocam-outline": 62882,
+  "videocam-sharp": 62883,
+  "volume-high": 62884,
+  "volume-high-outline": 62885,
+  "volume-high-sharp": 62886,
+  "volume-low": 62887,
+  "volume-low-outline": 62888,
+  "volume-low-sharp": 62889,
+  "volume-medium": 62890,
+  "volume-medium-outline": 62891,
+  "volume-medium-sharp": 62892,
+  "volume-mute": 62893,
+  "volume-mute-outline": 62894,
+  "volume-mute-sharp": 62895,
+  "volume-off": 62896,
+  "volume-off-outline": 62897,
+  "volume-off-sharp": 62898,
+  "walk": 62899,
+  "walk-outline": 62900,
+  "walk-sharp": 62901,
+  "wallet": 62902,
+  "wallet-outline": 62903,
+  "wallet-sharp": 62904,
+  "warning": 62905,
+  "warning-outline": 62906,
+  "warning-sharp": 62907,
+  "watch": 62908,
+  "watch-outline": 62909,
+  "watch-sharp": 62910,
+  "water": 62911,
+  "water-outline": 62912,
+  "water-sharp": 62913,
+  "wifi": 62914,
+  "wifi-outline": 62915,
+  "wifi-sharp": 62916,
+  "wine": 62917,
+  "wine-outline": 62918,
+  "wine-sharp": 62919,
+  "woman": 62920,
+  "woman-outline": 62921,
+  "woman-sharp": 62922,
+  "ios-add": 61696,
+  "ios-add-circle": 61697,
+  "ios-add-circle-outline": 61698,
+  "ios-add-circle-sharp": 61699,
+  "ios-add-outline": 61700,
+  "ios-add-sharp": 61701,
+  "ios-airplane": 61702,
+  "ios-airplane-outline": 61703,
+  "ios-airplane-sharp": 61704,
+  "ios-alarm": 61705,
+  "ios-alarm-outline": 61706,
+  "ios-alarm-sharp": 61707,
+  "ios-albums": 61708,
+  "ios-albums-outline": 61709,
+  "ios-albums-sharp": 61710,
+  "ios-alert": 61711,
+  "ios-alert-circle": 61712,
+  "ios-alert-circle-outline": 61713,
+  "ios-alert-circle-sharp": 61714,
+  "ios-alert-outline": 61715,
+  "ios-alert-sharp": 61716,
+  "ios-american-football": 61717,
+  "ios-american-football-outline": 61718,
+  "ios-american-football-sharp": 61719,
+  "ios-analytics": 61720,
+  "ios-analytics-outline": 61721,
+  "ios-analytics-sharp": 61722,
+  "ios-aperture": 61723,
+  "ios-aperture-outline": 61724,
+  "ios-aperture-sharp": 61725,
+  "ios-apps": 61726,
+  "ios-apps-outline": 61727,
+  "ios-apps-sharp": 61728,
+  "ios-archive": 61729,
+  "ios-archive-outline": 61730,
+  "ios-archive-sharp": 61731,
+  "ios-arrow-back": 61732,
+  "ios-arrow-back-circle": 61733,
+  "ios-arrow-back-circle-outline": 61734,
+  "ios-arrow-back-circle-sharp": 61735,
+  "ios-arrow-back-outline": 61736,
+  "ios-arrow-back-sharp": 61737,
+  "ios-arrow-down": 61738,
+  "ios-arrow-down-circle": 61739,
+  "ios-arrow-down-circle-outline": 61740,
+  "ios-arrow-down-circle-sharp": 61741,
+  "ios-arrow-down-outline": 61742,
+  "ios-arrow-down-sharp": 61743,
+  "ios-arrow-forward": 61744,
+  "ios-arrow-forward-circle": 61745,
+  "ios-arrow-forward-circle-outline": 61746,
+  "ios-arrow-forward-circle-sharp": 61747,
+  "ios-arrow-forward-outline": 61748,
+  "ios-arrow-forward-sharp": 61749,
+  "ios-arrow-redo": 61750,
+  "ios-arrow-redo-circle": 61751,
+  "ios-arrow-redo-circle-outline": 61752,
+  "ios-arrow-redo-circle-sharp": 61753,
+  "ios-arrow-redo-outline": 61754,
+  "ios-arrow-redo-sharp": 61755,
+  "ios-arrow-undo": 61756,
+  "ios-arrow-undo-circle": 61757,
+  "ios-arrow-undo-circle-outline": 61758,
+  "ios-arrow-undo-circle-sharp": 61759,
+  "ios-arrow-undo-outline": 61760,
+  "ios-arrow-undo-sharp": 61761,
+  "ios-arrow-up": 61762,
+  "ios-arrow-up-circle": 61763,
+  "ios-arrow-up-circle-outline": 61764,
+  "ios-arrow-up-circle-sharp": 61765,
+  "ios-arrow-up-outline": 61766,
+  "ios-arrow-up-sharp": 61767,
+  "ios-at": 61768,
+  "ios-at-circle": 61769,
+  "ios-at-circle-outline": 61770,
+  "ios-at-circle-sharp": 61771,
+  "ios-at-outline": 61772,
+  "ios-at-sharp": 61773,
+  "ios-attach": 61774,
+  "ios-attach-outline": 61775,
+  "ios-attach-sharp": 61776,
+  "ios-backspace": 61777,
+  "ios-backspace-outline": 61778,
+  "ios-backspace-sharp": 61779,
+  "ios-bandage": 61780,
+  "ios-bandage-outline": 61781,
+  "ios-bandage-sharp": 61782,
+  "ios-bar-chart": 61783,
+  "ios-bar-chart-outline": 61784,
+  "ios-bar-chart-sharp": 61785,
+  "ios-barbell": 61786,
+  "ios-barbell-outline": 61787,
+  "ios-barbell-sharp": 61788,
+  "ios-barcode": 61789,
+  "ios-barcode-outline": 61790,
+  "ios-barcode-sharp": 61791,
+  "ios-baseball": 61792,
+  "ios-baseball-outline": 61793,
+  "ios-baseball-sharp": 61794,
+  "ios-basket": 61795,
+  "ios-basket-outline": 61796,
+  "ios-basket-sharp": 61797,
+  "ios-basketball": 61798,
+  "ios-basketball-outline": 61799,
+  "ios-basketball-sharp": 61800,
+  "ios-battery-charging": 61801,
+  "ios-battery-charging-outline": 61802,
+  "ios-battery-charging-sharp": 61803,
+  "ios-battery-dead": 61804,
+  "ios-battery-dead-outline": 61805,
+  "ios-battery-dead-sharp": 61806,
+  "ios-battery-full": 61807,
+  "ios-battery-full-outline": 61808,
+  "ios-battery-full-sharp": 61809,
+  "ios-battery-half": 61810,
+  "ios-battery-half-outline": 61811,
+  "ios-battery-half-sharp": 61812,
+  "ios-beaker": 61813,
+  "ios-beaker-outline": 61814,
+  "ios-beaker-sharp": 61815,
+  "ios-bed": 61816,
+  "ios-bed-outline": 61817,
+  "ios-bed-sharp": 61818,
+  "ios-beer": 61819,
+  "ios-beer-outline": 61820,
+  "ios-beer-sharp": 61821,
+  "ios-bicycle": 61822,
+  "ios-bicycle-outline": 61823,
+  "ios-bicycle-sharp": 61824,
+  "ios-bluetooth": 61825,
+  "ios-bluetooth-outline": 61826,
+  "ios-bluetooth-sharp": 61827,
+  "ios-boat": 61828,
+  "ios-boat-outline": 61829,
+  "ios-boat-sharp": 61830,
+  "ios-body": 61831,
+  "ios-body-outline": 61832,
+  "ios-body-sharp": 61833,
+  "ios-bonfire": 61834,
+  "ios-bonfire-outline": 61835,
+  "ios-bonfire-sharp": 61836,
+  "ios-book": 61837,
+  "ios-book-outline": 61838,
+  "ios-book-sharp": 61839,
+  "ios-bookmark": 61840,
+  "ios-bookmark-outline": 61841,
+  "ios-bookmark-sharp": 61842,
+  "ios-bookmarks": 61843,
+  "ios-bookmarks-outline": 61844,
+  "ios-bookmarks-sharp": 61845,
+  "ios-briefcase": 61846,
+  "ios-briefcase-outline": 61847,
+  "ios-briefcase-sharp": 61848,
+  "ios-browsers": 61849,
+  "ios-browsers-outline": 61850,
+  "ios-browsers-sharp": 61851,
+  "ios-brush": 61852,
+  "ios-brush-outline": 61853,
+  "ios-brush-sharp": 61854,
+  "ios-bug": 61855,
+  "ios-bug-outline": 61856,
+  "ios-bug-sharp": 61857,
+  "ios-build": 61858,
+  "ios-build-outline": 61859,
+  "ios-build-sharp": 61860,
+  "ios-bulb": 61861,
+  "ios-bulb-outline": 61862,
+  "ios-bulb-sharp": 61863,
+  "ios-bus": 61864,
+  "ios-bus-outline": 61865,
+  "ios-bus-sharp": 61866,
+  "ios-business": 61867,
+  "ios-business-outline": 61868,
+  "ios-business-sharp": 61869,
+  "ios-cafe": 61870,
+  "ios-cafe-outline": 61871,
+  "ios-cafe-sharp": 61872,
+  "ios-calculator": 61873,
+  "ios-calculator-outline": 61874,
+  "ios-calculator-sharp": 61875,
+  "ios-calendar": 61876,
+  "ios-calendar-outline": 61877,
+  "ios-calendar-sharp": 61878,
+  "ios-call": 61879,
+  "ios-call-outline": 61880,
+  "ios-call-sharp": 61881,
+  "ios-camera": 61882,
+  "ios-camera-outline": 61883,
+  "ios-camera-reverse": 61884,
+  "ios-camera-reverse-outline": 61885,
+  "ios-camera-reverse-sharp": 61886,
+  "ios-camera-sharp": 61887,
+  "ios-car": 61888,
+  "ios-car-outline": 61889,
+  "ios-car-sharp": 61890,
+  "ios-car-sport": 61891,
+  "ios-car-sport-outline": 61892,
+  "ios-car-sport-sharp": 61893,
+  "ios-card": 61894,
+  "ios-card-outline": 61895,
+  "ios-card-sharp": 61896,
+  "ios-caret-back": 61897,
+  "ios-caret-back-circle": 61898,
+  "ios-caret-back-circle-outline": 61899,
+  "ios-caret-back-circle-sharp": 61900,
+  "ios-caret-back-outline": 61901,
+  "ios-caret-back-sharp": 61902,
+  "ios-caret-down": 61903,
+  "ios-caret-down-circle": 61904,
+  "ios-caret-down-circle-outline": 61905,
+  "ios-caret-down-circle-sharp": 61906,
+  "ios-caret-down-outline": 61907,
+  "ios-caret-down-sharp": 61908,
+  "ios-caret-forward": 61909,
+  "ios-caret-forward-circle": 61910,
+  "ios-caret-forward-circle-outline": 61911,
+  "ios-caret-forward-circle-sharp": 61912,
+  "ios-caret-forward-outline": 61913,
+  "ios-caret-forward-sharp": 61914,
+  "ios-caret-up": 61915,
+  "ios-caret-up-circle": 61916,
+  "ios-caret-up-circle-outline": 61917,
+  "ios-caret-up-circle-sharp": 61918,
+  "ios-caret-up-outline": 61919,
+  "ios-caret-up-sharp": 61920,
+  "ios-cart": 61921,
+  "ios-cart-outline": 61922,
+  "ios-cart-sharp": 61923,
+  "ios-cash": 61924,
+  "ios-cash-outline": 61925,
+  "ios-cash-sharp": 61926,
+  "ios-cellular": 61927,
+  "ios-cellular-outline": 61928,
+  "ios-cellular-sharp": 61929,
+  "ios-chatbox": 61930,
+  "ios-chatbox-ellipses": 61931,
+  "ios-chatbox-ellipses-outline": 61932,
+  "ios-chatbox-ellipses-sharp": 61933,
+  "ios-chatbox-outline": 61934,
+  "ios-chatbox-sharp": 61935,
+  "ios-chatbubble": 61936,
+  "ios-chatbubble-ellipses": 61937,
+  "ios-chatbubble-ellipses-outline": 61938,
+  "ios-chatbubble-ellipses-sharp": 61939,
+  "ios-chatbubble-outline": 61940,
+  "ios-chatbubble-sharp": 61941,
+  "ios-chatbubbles": 61942,
+  "ios-chatbubbles-outline": 61943,
+  "ios-chatbubbles-sharp": 61944,
+  "ios-checkbox": 61945,
+  "ios-checkbox-outline": 61946,
+  "ios-checkbox-sharp": 61947,
+  "ios-checkmark": 61948,
+  "ios-checkmark-circle": 61949,
+  "ios-checkmark-circle-outline": 61950,
+  "ios-checkmark-circle-sharp": 61951,
+  "ios-checkmark-done": 61952,
+  "ios-checkmark-done-circle": 61953,
+  "ios-checkmark-done-circle-outline": 61954,
+  "ios-checkmark-done-circle-sharp": 61955,
+  "ios-checkmark-done-outline": 61956,
+  "ios-checkmark-done-sharp": 61957,
+  "ios-checkmark-outline": 61958,
+  "ios-checkmark-sharp": 61959,
+  "ios-chevron-back": 61960,
+  "ios-chevron-back-circle": 61961,
+  "ios-chevron-back-circle-outline": 61962,
+  "ios-chevron-back-circle-sharp": 61963,
+  "ios-chevron-back-outline": 61964,
+  "ios-chevron-back-sharp": 61965,
+  "ios-chevron-down": 61966,
+  "ios-chevron-down-circle": 61967,
+  "ios-chevron-down-circle-outline": 61968,
+  "ios-chevron-down-circle-sharp": 61969,
+  "ios-chevron-down-outline": 61970,
+  "ios-chevron-down-sharp": 61971,
+  "ios-chevron-forward": 61972,
+  "ios-chevron-forward-circle": 61973,
+  "ios-chevron-forward-circle-outline": 61974,
+  "ios-chevron-forward-circle-sharp": 61975,
+  "ios-chevron-forward-outline": 61976,
+  "ios-chevron-forward-sharp": 61977,
+  "ios-chevron-up": 61978,
+  "ios-chevron-up-circle": 61979,
+  "ios-chevron-up-circle-outline": 61980,
+  "ios-chevron-up-circle-sharp": 61981,
+  "ios-chevron-up-outline": 61982,
+  "ios-chevron-up-sharp": 61983,
+  "ios-clipboard": 61984,
+  "ios-clipboard-outline": 61985,
+  "ios-clipboard-sharp": 61986,
+  "ios-close": 61987,
+  "ios-close-circle": 61988,
+  "ios-close-circle-outline": 61989,
+  "ios-close-circle-sharp": 61990,
+  "ios-close-outline": 61991,
+  "ios-close-sharp": 61992,
+  "ios-cloud": 61993,
+  "ios-cloud-circle": 61994,
+  "ios-cloud-circle-outline": 61995,
+  "ios-cloud-circle-sharp": 61996,
+  "ios-cloud-done": 61997,
+  "ios-cloud-done-outline": 61998,
+  "ios-cloud-done-sharp": 61999,
+  "ios-cloud-download": 62000,
+  "ios-cloud-download-outline": 62001,
+  "ios-cloud-download-sharp": 62002,
+  "ios-cloud-offline": 62003,
+  "ios-cloud-offline-outline": 62004,
+  "ios-cloud-offline-sharp": 62005,
+  "ios-cloud-outline": 62006,
+  "ios-cloud-sharp": 62007,
+  "ios-cloud-upload": 62008,
+  "ios-cloud-upload-outline": 62009,
+  "ios-cloud-upload-sharp": 62010,
+  "ios-cloudy": 62011,
+  "ios-cloudy-night": 62012,
+  "ios-cloudy-night-outline": 62013,
+  "ios-cloudy-night-sharp": 62014,
+  "ios-cloudy-outline": 62015,
+  "ios-cloudy-sharp": 62016,
+  "ios-code": 62017,
+  "ios-code-download": 62018,
+  "ios-code-download-outline": 62019,
+  "ios-code-download-sharp": 62020,
+  "ios-code-outline": 62021,
+  "ios-code-sharp": 62022,
+  "ios-code-slash": 62023,
+  "ios-code-slash-outline": 62024,
+  "ios-code-slash-sharp": 62025,
+  "ios-code-working": 62026,
+  "ios-code-working-outline": 62027,
+  "ios-code-working-sharp": 62028,
+  "ios-cog": 62029,
+  "ios-cog-outline": 62030,
+  "ios-cog-sharp": 62031,
+  "ios-color-fill": 62032,
+  "ios-color-fill-outline": 62033,
+  "ios-color-fill-sharp": 62034,
+  "ios-color-filter": 62035,
+  "ios-color-filter-outline": 62036,
+  "ios-color-filter-sharp": 62037,
+  "ios-color-palette": 62038,
+  "ios-color-palette-outline": 62039,
+  "ios-color-palette-sharp": 62040,
+  "ios-color-wand": 62041,
+  "ios-color-wand-outline": 62042,
+  "ios-color-wand-sharp": 62043,
+  "ios-compass": 62044,
+  "ios-compass-outline": 62045,
+  "ios-compass-sharp": 62046,
+  "ios-construct": 62047,
+  "ios-construct-outline": 62048,
+  "ios-construct-sharp": 62049,
+  "ios-contract": 62050,
+  "ios-contract-outline": 62051,
+  "ios-contract-sharp": 62052,
+  "ios-contrast": 62053,
+  "ios-contrast-outline": 62054,
+  "ios-contrast-sharp": 62055,
+  "ios-copy": 62056,
+  "ios-copy-outline": 62057,
+  "ios-copy-sharp": 62058,
+  "ios-create": 62059,
+  "ios-create-outline": 62060,
+  "ios-create-sharp": 62061,
+  "ios-crop": 62062,
+  "ios-crop-outline": 62063,
+  "ios-crop-sharp": 62064,
+  "ios-cube": 62065,
+  "ios-cube-outline": 62066,
+  "ios-cube-sharp": 62067,
+  "ios-cut": 62068,
+  "ios-cut-outline": 62069,
+  "ios-cut-sharp": 62070,
+  "ios-desktop": 62071,
+  "ios-desktop-outline": 62072,
+  "ios-desktop-sharp": 62073,
+  "ios-disc": 62074,
+  "ios-disc-outline": 62075,
+  "ios-disc-sharp": 62076,
+  "ios-document": 62077,
+  "ios-document-attach": 62078,
+  "ios-document-attach-outline": 62079,
+  "ios-document-attach-sharp": 62080,
+  "ios-document-outline": 62081,
+  "ios-document-sharp": 62082,
+  "ios-document-text": 62083,
+  "ios-document-text-outline": 62084,
+  "ios-document-text-sharp": 62085,
+  "ios-documents": 62086,
+  "ios-documents-outline": 62087,
+  "ios-documents-sharp": 62088,
+  "ios-download": 62089,
+  "ios-download-outline": 62090,
+  "ios-download-sharp": 62091,
+  "ios-duplicate": 62092,
+  "ios-duplicate-outline": 62093,
+  "ios-duplicate-sharp": 62094,
+  "ios-ear": 62095,
+  "ios-ear-outline": 62096,
+  "ios-ear-sharp": 62097,
+  "ios-earth": 62098,
+  "ios-earth-outline": 62099,
+  "ios-earth-sharp": 62100,
+  "ios-easel": 62101,
+  "ios-easel-outline": 62102,
+  "ios-easel-sharp": 62103,
+  "ios-egg": 62104,
+  "ios-egg-outline": 62105,
+  "ios-egg-sharp": 62106,
+  "ios-ellipse": 62107,
+  "ios-ellipse-outline": 62108,
+  "ios-ellipse-sharp": 62109,
+  "ios-ellipsis-horizontal": 62110,
+  "ios-ellipsis-horizontal-circle": 62111,
+  "ios-ellipsis-horizontal-circle-outline": 62112,
+  "ios-ellipsis-horizontal-circle-sharp": 62113,
+  "ios-ellipsis-horizontal-outline": 62114,
+  "ios-ellipsis-horizontal-sharp": 62115,
+  "ios-ellipsis-vertical": 62116,
+  "ios-ellipsis-vertical-circle": 62117,
+  "ios-ellipsis-vertical-circle-outline": 62118,
+  "ios-ellipsis-vertical-circle-sharp": 62119,
+  "ios-ellipsis-vertical-outline": 62120,
+  "ios-ellipsis-vertical-sharp": 62121,
+  "ios-enter": 62122,
+  "ios-enter-outline": 62123,
+  "ios-enter-sharp": 62124,
+  "ios-exit": 62125,
+  "ios-exit-outline": 62126,
+  "ios-exit-sharp": 62127,
+  "ios-expand": 62128,
+  "ios-expand-outline": 62129,
+  "ios-expand-sharp": 62130,
+  "ios-eye": 62131,
+  "ios-eye-off": 62132,
+  "ios-eye-off-outline": 62133,
+  "ios-eye-off-sharp": 62134,
+  "ios-eye-outline": 62135,
+  "ios-eye-sharp": 62136,
+  "ios-eyedrop": 62137,
+  "ios-eyedrop-outline": 62138,
+  "ios-eyedrop-sharp": 62139,
+  "ios-fast-food": 62140,
+  "ios-fast-food-outline": 62141,
+  "ios-fast-food-sharp": 62142,
+  "ios-female": 62143,
+  "ios-female-outline": 62144,
+  "ios-female-sharp": 62145,
+  "ios-file-tray": 62146,
+  "ios-file-tray-full": 62147,
+  "ios-file-tray-full-outline": 62148,
+  "ios-file-tray-full-sharp": 62149,
+  "ios-file-tray-outline": 62150,
+  "ios-file-tray-sharp": 62151,
+  "ios-file-tray-stacked": 62152,
+  "ios-file-tray-stacked-outline": 62153,
+  "ios-file-tray-stacked-sharp": 62154,
+  "ios-film": 62155,
+  "ios-film-outline": 62156,
+  "ios-film-sharp": 62157,
+  "ios-filter": 62158,
+  "ios-filter-outline": 62159,
+  "ios-filter-sharp": 62160,
+  "ios-finger-print": 62161,
+  "ios-finger-print-outline": 62162,
+  "ios-finger-print-sharp": 62163,
+  "ios-fitness": 62164,
+  "ios-fitness-outline": 62165,
+  "ios-fitness-sharp": 62166,
+  "ios-flag": 62167,
+  "ios-flag-outline": 62168,
+  "ios-flag-sharp": 62169,
+  "ios-flame": 62170,
+  "ios-flame-outline": 62171,
+  "ios-flame-sharp": 62172,
+  "ios-flash": 62173,
+  "ios-flash-off": 62174,
+  "ios-flash-off-outline": 62175,
+  "ios-flash-off-sharp": 62176,
+  "ios-flash-outline": 62177,
+  "ios-flash-sharp": 62178,
+  "ios-flashlight": 62179,
+  "ios-flashlight-outline": 62180,
+  "ios-flashlight-sharp": 62181,
+  "ios-flask": 62182,
+  "ios-flask-outline": 62183,
+  "ios-flask-sharp": 62184,
+  "ios-flower": 62185,
+  "ios-flower-outline": 62186,
+  "ios-flower-sharp": 62187,
+  "ios-folder": 62188,
+  "ios-folder-open": 62189,
+  "ios-folder-open-outline": 62190,
+  "ios-folder-open-sharp": 62191,
+  "ios-folder-outline": 62192,
+  "ios-folder-sharp": 62193,
+  "ios-football": 62194,
+  "ios-football-outline": 62195,
+  "ios-football-sharp": 62196,
+  "ios-funnel": 62197,
+  "ios-funnel-outline": 62198,
+  "ios-funnel-sharp": 62199,
+  "ios-game-controller": 62200,
+  "ios-game-controller-outline": 62201,
+  "ios-game-controller-sharp": 62202,
+  "ios-gift": 62203,
+  "ios-gift-outline": 62204,
+  "ios-gift-sharp": 62205,
+  "ios-git-branch": 62206,
+  "ios-git-branch-outline": 62207,
+  "ios-git-branch-sharp": 62208,
+  "ios-git-commit": 62209,
+  "ios-git-commit-outline": 62210,
+  "ios-git-commit-sharp": 62211,
+  "ios-git-compare": 62212,
+  "ios-git-compare-outline": 62213,
+  "ios-git-compare-sharp": 62214,
+  "ios-git-merge": 62215,
+  "ios-git-merge-outline": 62216,
+  "ios-git-merge-sharp": 62217,
+  "ios-git-network": 62218,
+  "ios-git-network-outline": 62219,
+  "ios-git-network-sharp": 62220,
+  "ios-git-pull-request": 62221,
+  "ios-git-pull-request-outline": 62222,
+  "ios-git-pull-request-sharp": 62223,
+  "ios-glasses": 62224,
+  "ios-glasses-outline": 62225,
+  "ios-glasses-sharp": 62226,
+  "ios-globe": 62227,
+  "ios-globe-outline": 62228,
+  "ios-globe-sharp": 62229,
+  "ios-golf": 62230,
+  "ios-golf-outline": 62231,
+  "ios-golf-sharp": 62232,
+  "ios-grid": 62233,
+  "ios-grid-outline": 62234,
+  "ios-grid-sharp": 62235,
+  "ios-hammer": 62236,
+  "ios-hammer-outline": 62237,
+  "ios-hammer-sharp": 62238,
+  "ios-hand-left": 62239,
+  "ios-hand-left-outline": 62240,
+  "ios-hand-left-sharp": 62241,
+  "ios-hand-right": 62242,
+  "ios-hand-right-outline": 62243,
+  "ios-hand-right-sharp": 62244,
+  "ios-happy": 62245,
+  "ios-happy-outline": 62246,
+  "ios-happy-sharp": 62247,
+  "ios-hardware-chip": 62248,
+  "ios-hardware-chip-outline": 62249,
+  "ios-hardware-chip-sharp": 62250,
+  "ios-headset": 62251,
+  "ios-headset-outline": 62252,
+  "ios-headset-sharp": 62253,
+  "ios-heart": 62254,
+  "ios-heart-circle": 62255,
+  "ios-heart-circle-outline": 62256,
+  "ios-heart-circle-sharp": 62257,
+  "ios-heart-dislike": 62258,
+  "ios-heart-dislike-circle": 62259,
+  "ios-heart-dislike-circle-outline": 62260,
+  "ios-heart-dislike-circle-sharp": 62261,
+  "ios-heart-dislike-outline": 62262,
+  "ios-heart-dislike-sharp": 62263,
+  "ios-heart-half": 62264,
+  "ios-heart-half-outline": 62265,
+  "ios-heart-half-sharp": 62266,
+  "ios-heart-outline": 62267,
+  "ios-heart-sharp": 62268,
+  "ios-help": 62269,
+  "ios-help-buoy": 62270,
+  "ios-help-buoy-outline": 62271,
+  "ios-help-buoy-sharp": 62272,
+  "ios-help-circle": 62273,
+  "ios-help-circle-outline": 62274,
+  "ios-help-circle-sharp": 62275,
+  "ios-help-outline": 62276,
+  "ios-help-sharp": 62277,
+  "ios-home": 62278,
+  "ios-home-outline": 62279,
+  "ios-home-sharp": 62280,
+  "ios-hourglass": 62281,
+  "ios-hourglass-outline": 62282,
+  "ios-hourglass-sharp": 62283,
+  "ios-ice-cream": 62284,
+  "ios-ice-cream-outline": 62285,
+  "ios-ice-cream-sharp": 62286,
+  "ios-image": 62287,
+  "ios-image-outline": 62288,
+  "ios-image-sharp": 62289,
+  "ios-images": 62290,
+  "ios-images-outline": 62291,
+  "ios-images-sharp": 62292,
+  "ios-infinite": 62293,
+  "ios-infinite-outline": 62294,
+  "ios-infinite-sharp": 62295,
+  "ios-information": 62296,
+  "ios-information-circle": 62297,
+  "ios-information-circle-outline": 62298,
+  "ios-information-circle-sharp": 62299,
+  "ios-information-outline": 62300,
+  "ios-information-sharp": 62301,
+  "ios-journal": 62302,
+  "ios-journal-outline": 62303,
+  "ios-journal-sharp": 62304,
+  "ios-key": 62305,
+  "ios-key-outline": 62306,
+  "ios-key-sharp": 62307,
+  "ios-keypad": 62308,
+  "ios-keypad-outline": 62309,
+  "ios-keypad-sharp": 62310,
+  "ios-language": 62311,
+  "ios-language-outline": 62312,
+  "ios-language-sharp": 62313,
+  "ios-laptop": 62314,
+  "ios-laptop-outline": 62315,
+  "ios-laptop-sharp": 62316,
+  "ios-layers": 62317,
+  "ios-layers-outline": 62318,
+  "ios-layers-sharp": 62319,
+  "ios-leaf": 62320,
+  "ios-leaf-outline": 62321,
+  "ios-leaf-sharp": 62322,
+  "ios-library": 62323,
+  "ios-library-outline": 62324,
+  "ios-library-sharp": 62325,
+  "ios-link": 62326,
+  "ios-link-outline": 62327,
+  "ios-link-sharp": 62328,
+  "ios-list": 62329,
+  "ios-list-circle": 62330,
+  "ios-list-circle-outline": 62331,
+  "ios-list-circle-sharp": 62332,
+  "ios-list-outline": 62333,
+  "ios-list-sharp": 62334,
+  "ios-locate": 62335,
+  "ios-locate-outline": 62336,
+  "ios-locate-sharp": 62337,
+  "ios-location": 62338,
+  "ios-location-outline": 62339,
+  "ios-location-sharp": 62340,
+  "ios-lock-closed": 62341,
+  "ios-lock-closed-outline": 62342,
+  "ios-lock-closed-sharp": 62343,
+  "ios-lock-open": 62344,
+  "ios-lock-open-outline": 62345,
+  "ios-lock-open-sharp": 62346,
+  "ios-log-in": 62347,
+  "ios-log-in-outline": 62348,
+  "ios-log-in-sharp": 62349,
+  "ios-log-out": 62350,
+  "ios-log-out-outline": 62351,
+  "ios-log-out-sharp": 62352,
+  "ios-logo-amazon": 62353,
+  "ios-logo-amplify": 62354,
+  "ios-logo-android": 62355,
+  "ios-logo-angular": 62356,
+  "ios-logo-apple": 62357,
+  "ios-logo-apple-appstore": 62358,
+  "ios-logo-bitbucket": 62359,
+  "ios-logo-bitcoin": 62360,
+  "ios-logo-buffer": 62361,
+  "ios-logo-capacitor": 62362,
+  "ios-logo-chrome": 62363,
+  "ios-logo-closed-captioning": 62364,
+  "ios-logo-codepen": 62365,
+  "ios-logo-css3": 62366,
+  "ios-logo-designernews": 62367,
+  "ios-logo-dribbble": 62368,
+  "ios-logo-dropbox": 62369,
+  "ios-logo-edge": 62370,
+  "ios-logo-electron": 62371,
+  "ios-logo-euro": 62372,
+  "ios-logo-facebook": 62373,
+  "ios-logo-firebase": 62374,
+  "ios-logo-firefox": 62375,
+  "ios-logo-flickr": 62376,
+  "ios-logo-foursquare": 62377,
+  "ios-logo-github": 62378,
+  "ios-logo-google": 62379,
+  "ios-logo-google-playstore": 62380,
+  "ios-logo-hackernews": 62381,
+  "ios-logo-html5": 62382,
+  "ios-logo-instagram": 62383,
+  "ios-logo-ionic": 62384,
+  "ios-logo-ionitron": 62385,
+  "ios-logo-javascript": 62386,
+  "ios-logo-laravel": 62387,
+  "ios-logo-linkedin": 62388,
+  "ios-logo-markdown": 62389,
+  "ios-logo-no-smoking": 62390,
+  "ios-logo-nodejs": 62391,
+  "ios-logo-npm": 62392,
+  "ios-logo-octocat": 62393,
+  "ios-logo-pinterest": 62394,
+  "ios-logo-playstation": 62395,
+  "ios-logo-pwa": 62396,
+  "ios-logo-python": 62397,
+  "ios-logo-react": 62398,
+  "ios-logo-reddit": 62399,
+  "ios-logo-rss": 62400,
+  "ios-logo-sass": 62401,
+  "ios-logo-skype": 62402,
+  "ios-logo-slack": 62403,
+  "ios-logo-snapchat": 62404,
+  "ios-logo-stackoverflow": 62405,
+  "ios-logo-steam": 62406,
+  "ios-logo-stencil": 62407,
+  "ios-logo-tumblr": 62408,
+  "ios-logo-tux": 62409,
+  "ios-logo-twitch": 62410,
+  "ios-logo-twitter": 62411,
+  "ios-logo-usd": 62412,
+  "ios-logo-vimeo": 62413,
+  "ios-logo-vk": 62414,
+  "ios-logo-vue": 62415,
+  "ios-logo-web-component": 62416,
+  "ios-logo-whatsapp": 62417,
+  "ios-logo-windows": 62418,
+  "ios-logo-wordpress": 62419,
+  "ios-logo-xbox": 62420,
+  "ios-logo-xing": 62421,
+  "ios-logo-yahoo": 62422,
+  "ios-logo-yen": 62423,
+  "ios-logo-youtube": 62424,
+  "ios-magnet": 62425,
+  "ios-magnet-outline": 62426,
+  "ios-magnet-sharp": 62427,
+  "ios-mail": 62428,
+  "ios-mail-open": 62429,
+  "ios-mail-open-outline": 62430,
+  "ios-mail-open-sharp": 62431,
+  "ios-mail-outline": 62432,
+  "ios-mail-sharp": 62433,
+  "ios-mail-unread": 62434,
+  "ios-mail-unread-outline": 62435,
+  "ios-mail-unread-sharp": 62436,
+  "ios-male": 62437,
+  "ios-male-female": 62438,
+  "ios-male-female-outline": 62439,
+  "ios-male-female-sharp": 62440,
+  "ios-male-outline": 62441,
+  "ios-male-sharp": 62442,
+  "ios-man": 62443,
+  "ios-man-outline": 62444,
+  "ios-man-sharp": 62445,
+  "ios-map": 62446,
+  "ios-map-outline": 62447,
+  "ios-map-sharp": 62448,
+  "ios-medal": 62449,
+  "ios-medal-outline": 62450,
+  "ios-medal-sharp": 62451,
+  "ios-medical": 62452,
+  "ios-medical-outline": 62453,
+  "ios-medical-sharp": 62454,
+  "ios-medkit": 62455,
+  "ios-medkit-outline": 62456,
+  "ios-medkit-sharp": 62457,
+  "ios-megaphone": 62458,
+  "ios-megaphone-outline": 62459,
+  "ios-megaphone-sharp": 62460,
+  "ios-menu": 62461,
+  "ios-menu-outline": 62462,
+  "ios-menu-sharp": 62463,
+  "ios-mic": 62464,
+  "ios-mic-circle": 62465,
+  "ios-mic-circle-outline": 62466,
+  "ios-mic-circle-sharp": 62467,
+  "ios-mic-off": 62468,
+  "ios-mic-off-circle": 62469,
+  "ios-mic-off-circle-outline": 62470,
+  "ios-mic-off-circle-sharp": 62471,
+  "ios-mic-off-outline": 62472,
+  "ios-mic-off-sharp": 62473,
+  "ios-mic-outline": 62474,
+  "ios-mic-sharp": 62475,
+  "ios-moon": 62476,
+  "ios-moon-outline": 62477,
+  "ios-moon-sharp": 62478,
+  "ios-move": 62479,
+  "ios-move-outline": 62480,
+  "ios-move-sharp": 62481,
+  "ios-musical-note": 62482,
+  "ios-musical-note-outline": 62483,
+  "ios-musical-note-sharp": 62484,
+  "ios-musical-notes": 62485,
+  "ios-musical-notes-outline": 62486,
+  "ios-musical-notes-sharp": 62487,
+  "ios-navigate": 62488,
+  "ios-navigate-circle": 62489,
+  "ios-navigate-circle-outline": 62490,
+  "ios-navigate-circle-sharp": 62491,
+  "ios-navigate-outline": 62492,
+  "ios-navigate-sharp": 62493,
+  "ios-newspaper": 62494,
+  "ios-newspaper-outline": 62495,
+  "ios-newspaper-sharp": 62496,
+  "ios-notifications": 62497,
+  "ios-notifications-circle": 62498,
+  "ios-notifications-circle-outline": 62499,
+  "ios-notifications-circle-sharp": 62500,
+  "ios-notifications-off": 62501,
+  "ios-notifications-off-circle": 62502,
+  "ios-notifications-off-circle-outline": 62503,
+  "ios-notifications-off-circle-sharp": 62504,
+  "ios-notifications-off-outline": 62505,
+  "ios-notifications-off-sharp": 62506,
+  "ios-notifications-outline": 62507,
+  "ios-notifications-sharp": 62508,
+  "ios-nuclear": 62509,
+  "ios-nuclear-outline": 62510,
+  "ios-nuclear-sharp": 62511,
+  "ios-nutrition": 62512,
+  "ios-nutrition-outline": 62513,
+  "ios-nutrition-sharp": 62514,
+  "ios-open": 62515,
+  "ios-open-outline": 62516,
+  "ios-open-sharp": 62517,
+  "ios-options": 62518,
+  "ios-options-outline": 62519,
+  "ios-options-sharp": 62520,
+  "ios-paper-plane": 62521,
+  "ios-paper-plane-outline": 62522,
+  "ios-paper-plane-sharp": 62523,
+  "ios-partly-sunny": 62524,
+  "ios-partly-sunny-outline": 62525,
+  "ios-partly-sunny-sharp": 62526,
+  "ios-pause": 62527,
+  "ios-pause-circle": 62528,
+  "ios-pause-circle-outline": 62529,
+  "ios-pause-circle-sharp": 62530,
+  "ios-pause-outline": 62531,
+  "ios-pause-sharp": 62532,
+  "ios-paw": 62533,
+  "ios-paw-outline": 62534,
+  "ios-paw-sharp": 62535,
+  "ios-pencil": 62536,
+  "ios-pencil-outline": 62537,
+  "ios-pencil-sharp": 62538,
+  "ios-people": 62539,
+  "ios-people-circle": 62540,
+  "ios-people-circle-outline": 62541,
+  "ios-people-circle-sharp": 62542,
+  "ios-people-outline": 62543,
+  "ios-people-sharp": 62544,
+  "ios-person": 62545,
+  "ios-person-add": 62546,
+  "ios-person-add-outline": 62547,
+  "ios-person-add-sharp": 62548,
+  "ios-person-circle": 62549,
+  "ios-person-circle-outline": 62550,
+  "ios-person-circle-sharp": 62551,
+  "ios-person-outline": 62552,
+  "ios-person-remove": 62553,
+  "ios-person-remove-outline": 62554,
+  "ios-person-remove-sharp": 62555,
+  "ios-person-sharp": 62556,
+  "ios-phone-landscape": 62557,
+  "ios-phone-landscape-outline": 62558,
+  "ios-phone-landscape-sharp": 62559,
+  "ios-phone-portrait": 62560,
+  "ios-phone-portrait-outline": 62561,
+  "ios-phone-portrait-sharp": 62562,
+  "ios-pie-chart": 62563,
+  "ios-pie-chart-outline": 62564,
+  "ios-pie-chart-sharp": 62565,
+  "ios-pin": 62566,
+  "ios-pin-outline": 62567,
+  "ios-pin-sharp": 62568,
+  "ios-pint": 62569,
+  "ios-pint-outline": 62570,
+  "ios-pint-sharp": 62571,
+  "ios-pizza": 62572,
+  "ios-pizza-outline": 62573,
+  "ios-pizza-sharp": 62574,
+  "ios-planet": 62575,
+  "ios-planet-outline": 62576,
+  "ios-planet-sharp": 62577,
+  "ios-play": 62578,
+  "ios-play-back": 62579,
+  "ios-play-back-circle": 62580,
+  "ios-play-back-circle-outline": 62581,
+  "ios-play-back-circle-sharp": 62582,
+  "ios-play-back-outline": 62583,
+  "ios-play-back-sharp": 62584,
+  "ios-play-circle": 62585,
+  "ios-play-circle-outline": 62586,
+  "ios-play-circle-sharp": 62587,
+  "ios-play-forward": 62588,
+  "ios-play-forward-circle": 62589,
+  "ios-play-forward-circle-outline": 62590,
+  "ios-play-forward-circle-sharp": 62591,
+  "ios-play-forward-outline": 62592,
+  "ios-play-forward-sharp": 62593,
+  "ios-play-outline": 62594,
+  "ios-play-sharp": 62595,
+  "ios-play-skip-back": 62596,
+  "ios-play-skip-back-circle": 62597,
+  "ios-play-skip-back-circle-outline": 62598,
+  "ios-play-skip-back-circle-sharp": 62599,
+  "ios-play-skip-back-outline": 62600,
+  "ios-play-skip-back-sharp": 62601,
+  "ios-play-skip-forward": 62602,
+  "ios-play-skip-forward-circle": 62603,
+  "ios-play-skip-forward-circle-outline": 62604,
+  "ios-play-skip-forward-circle-sharp": 62605,
+  "ios-play-skip-forward-outline": 62606,
+  "ios-play-skip-forward-sharp": 62607,
+  "ios-podium": 62608,
+  "ios-podium-outline": 62609,
+  "ios-podium-sharp": 62610,
+  "ios-power": 62611,
+  "ios-power-outline": 62612,
+  "ios-power-sharp": 62613,
+  "ios-pricetag": 62614,
+  "ios-pricetag-outline": 62615,
+  "ios-pricetag-sharp": 62616,
+  "ios-pricetags": 62617,
+  "ios-pricetags-outline": 62618,
+  "ios-pricetags-sharp": 62619,
+  "ios-print": 62620,
+  "ios-print-outline": 62621,
+  "ios-print-sharp": 62622,
+  "ios-pulse": 62623,
+  "ios-pulse-outline": 62624,
+  "ios-pulse-sharp": 62625,
+  "ios-push": 62626,
+  "ios-push-outline": 62627,
+  "ios-push-sharp": 62628,
+  "ios-qr-code": 62629,
+  "ios-qr-code-outline": 62630,
+  "ios-qr-code-sharp": 62631,
+  "ios-radio": 62632,
+  "ios-radio-button-off": 62633,
+  "ios-radio-button-off-outline": 62634,
+  "ios-radio-button-off-sharp": 62635,
+  "ios-radio-button-on": 62636,
+  "ios-radio-button-on-outline": 62637,
+  "ios-radio-button-on-sharp": 62638,
+  "ios-radio-outline": 62639,
+  "ios-radio-sharp": 62640,
+  "ios-rainy": 62641,
+  "ios-rainy-outline": 62642,
+  "ios-rainy-sharp": 62643,
+  "ios-reader": 62644,
+  "ios-reader-outline": 62645,
+  "ios-reader-sharp": 62646,
+  "ios-receipt": 62647,
+  "ios-receipt-outline": 62648,
+  "ios-receipt-sharp": 62649,
+  "ios-recording": 62650,
+  "ios-recording-outline": 62651,
+  "ios-recording-sharp": 62652,
+  "ios-refresh": 62653,
+  "ios-refresh-circle": 62654,
+  "ios-refresh-circle-outline": 62655,
+  "ios-refresh-circle-sharp": 62656,
+  "ios-refresh-outline": 62657,
+  "ios-refresh-sharp": 62658,
+  "ios-reload": 62659,
+  "ios-reload-circle": 62660,
+  "ios-reload-circle-outline": 62661,
+  "ios-reload-circle-sharp": 62662,
+  "ios-reload-outline": 62663,
+  "ios-reload-sharp": 62664,
+  "ios-remove": 62665,
+  "ios-remove-circle": 62666,
+  "ios-remove-circle-outline": 62667,
+  "ios-remove-circle-sharp": 62668,
+  "ios-remove-outline": 62669,
+  "ios-remove-sharp": 62670,
+  "ios-reorder-four": 62671,
+  "ios-reorder-four-outline": 62672,
+  "ios-reorder-four-sharp": 62673,
+  "ios-reorder-three": 62674,
+  "ios-reorder-three-outline": 62675,
+  "ios-reorder-three-sharp": 62676,
+  "ios-reorder-two": 62677,
+  "ios-reorder-two-outline": 62678,
+  "ios-reorder-two-sharp": 62679,
+  "ios-repeat": 62680,
+  "ios-repeat-outline": 62681,
+  "ios-repeat-sharp": 62682,
+  "ios-resize": 62683,
+  "ios-resize-outline": 62684,
+  "ios-resize-sharp": 62685,
+  "ios-restaurant": 62686,
+  "ios-restaurant-outline": 62687,
+  "ios-restaurant-sharp": 62688,
+  "ios-return-down-back": 62689,
+  "ios-return-down-back-outline": 62690,
+  "ios-return-down-back-sharp": 62691,
+  "ios-return-down-forward": 62692,
+  "ios-return-down-forward-outline": 62693,
+  "ios-return-down-forward-sharp": 62694,
+  "ios-return-up-back": 62695,
+  "ios-return-up-back-outline": 62696,
+  "ios-return-up-back-sharp": 62697,
+  "ios-return-up-forward": 62698,
+  "ios-return-up-forward-outline": 62699,
+  "ios-return-up-forward-sharp": 62700,
+  "ios-ribbon": 62701,
+  "ios-ribbon-outline": 62702,
+  "ios-ribbon-sharp": 62703,
+  "ios-rocket": 62704,
+  "ios-rocket-outline": 62705,
+  "ios-rocket-sharp": 62706,
+  "ios-rose": 62707,
+  "ios-rose-outline": 62708,
+  "ios-rose-sharp": 62709,
+  "ios-sad": 62710,
+  "ios-sad-outline": 62711,
+  "ios-sad-sharp": 62712,
+  "ios-save": 62713,
+  "ios-save-outline": 62714,
+  "ios-save-sharp": 62715,
+  "ios-scan": 62716,
+  "ios-scan-circle": 62717,
+  "ios-scan-circle-outline": 62718,
+  "ios-scan-circle-sharp": 62719,
+  "ios-scan-outline": 62720,
+  "ios-scan-sharp": 62721,
+  "ios-school": 62722,
+  "ios-school-outline": 62723,
+  "ios-school-sharp": 62724,
+  "ios-search": 62725,
+  "ios-search-circle": 62726,
+  "ios-search-circle-outline": 62727,
+  "ios-search-circle-sharp": 62728,
+  "ios-search-outline": 62729,
+  "ios-search-sharp": 62730,
+  "ios-send": 62731,
+  "ios-send-outline": 62732,
+  "ios-send-sharp": 62733,
+  "ios-server": 62734,
+  "ios-server-outline": 62735,
+  "ios-server-sharp": 62736,
+  "ios-settings": 62737,
+  "ios-settings-outline": 62738,
+  "ios-settings-sharp": 62739,
+  "ios-shapes": 62740,
+  "ios-shapes-outline": 62741,
+  "ios-shapes-sharp": 62742,
+  "ios-share": 62743,
+  "ios-share-outline": 62744,
+  "ios-share-sharp": 62745,
+  "ios-share-social": 62746,
+  "ios-share-social-outline": 62747,
+  "ios-share-social-sharp": 62748,
+  "ios-shield": 62749,
+  "ios-shield-checkmark": 62750,
+  "ios-shield-checkmark-outline": 62751,
+  "ios-shield-checkmark-sharp": 62752,
+  "ios-shield-outline": 62753,
+  "ios-shield-sharp": 62754,
+  "ios-shirt": 62755,
+  "ios-shirt-outline": 62756,
+  "ios-shirt-sharp": 62757,
+  "ios-shuffle": 62758,
+  "ios-shuffle-outline": 62759,
+  "ios-shuffle-sharp": 62760,
+  "ios-skull": 62761,
+  "ios-skull-outline": 62762,
+  "ios-skull-sharp": 62763,
+  "ios-snow": 62764,
+  "ios-snow-outline": 62765,
+  "ios-snow-sharp": 62766,
+  "ios-speedometer": 62767,
+  "ios-speedometer-outline": 62768,
+  "ios-speedometer-sharp": 62769,
+  "ios-square": 62770,
+  "ios-square-outline": 62771,
+  "ios-square-sharp": 62772,
+  "ios-star": 62773,
+  "ios-star-half": 62774,
+  "ios-star-half-outline": 62775,
+  "ios-star-half-sharp": 62776,
+  "ios-star-outline": 62777,
+  "ios-star-sharp": 62778,
+  "ios-stats-chart": 62779,
+  "ios-stats-chart-outline": 62780,
+  "ios-stats-chart-sharp": 62781,
+  "ios-stop": 62782,
+  "ios-stop-circle": 62783,
+  "ios-stop-circle-outline": 62784,
+  "ios-stop-circle-sharp": 62785,
+  "ios-stop-outline": 62786,
+  "ios-stop-sharp": 62787,
+  "ios-stopwatch": 62788,
+  "ios-stopwatch-outline": 62789,
+  "ios-stopwatch-sharp": 62790,
+  "ios-subway": 62791,
+  "ios-subway-outline": 62792,
+  "ios-subway-sharp": 62793,
+  "ios-sunny": 62794,
+  "ios-sunny-outline": 62795,
+  "ios-sunny-sharp": 62796,
+  "ios-swap-horizontal": 62797,
+  "ios-swap-horizontal-outline": 62798,
+  "ios-swap-horizontal-sharp": 62799,
+  "ios-swap-vertical": 62800,
+  "ios-swap-vertical-outline": 62801,
+  "ios-swap-vertical-sharp": 62802,
+  "ios-sync": 62803,
+  "ios-sync-circle": 62804,
+  "ios-sync-circle-outline": 62805,
+  "ios-sync-circle-sharp": 62806,
+  "ios-sync-outline": 62807,
+  "ios-sync-sharp": 62808,
+  "ios-tablet-landscape": 62809,
+  "ios-tablet-landscape-outline": 62810,
+  "ios-tablet-landscape-sharp": 62811,
+  "ios-tablet-portrait": 62812,
+  "ios-tablet-portrait-outline": 62813,
+  "ios-tablet-portrait-sharp": 62814,
+  "ios-tennisball": 62815,
+  "ios-tennisball-outline": 62816,
+  "ios-tennisball-sharp": 62817,
+  "ios-terminal": 62818,
+  "ios-terminal-outline": 62819,
+  "ios-terminal-sharp": 62820,
+  "ios-text": 62821,
+  "ios-text-outline": 62822,
+  "ios-text-sharp": 62823,
+  "ios-thermometer": 62824,
+  "ios-thermometer-outline": 62825,
+  "ios-thermometer-sharp": 62826,
+  "ios-thumbs-down": 62827,
+  "ios-thumbs-down-outline": 62828,
+  "ios-thumbs-down-sharp": 62829,
+  "ios-thumbs-up": 62830,
+  "ios-thumbs-up-outline": 62831,
+  "ios-thumbs-up-sharp": 62832,
+  "ios-thunderstorm": 62833,
+  "ios-thunderstorm-outline": 62834,
+  "ios-thunderstorm-sharp": 62835,
+  "ios-time": 62836,
+  "ios-time-outline": 62837,
+  "ios-time-sharp": 62838,
+  "ios-timer": 62839,
+  "ios-timer-outline": 62840,
+  "ios-timer-sharp": 62841,
+  "ios-today": 62842,
+  "ios-today-outline": 62843,
+  "ios-today-sharp": 62844,
+  "ios-toggle": 62845,
+  "ios-toggle-outline": 62846,
+  "ios-toggle-sharp": 62847,
+  "ios-trail-sign": 62848,
+  "ios-trail-sign-outline": 62849,
+  "ios-trail-sign-sharp": 62850,
+  "ios-train": 62851,
+  "ios-train-outline": 62852,
+  "ios-train-sharp": 62853,
+  "ios-transgender": 62854,
+  "ios-transgender-outline": 62855,
+  "ios-transgender-sharp": 62856,
+  "ios-trash": 62857,
+  "ios-trash-bin": 62858,
+  "ios-trash-bin-outline": 62859,
+  "ios-trash-bin-sharp": 62860,
+  "ios-trash-outline": 62861,
+  "ios-trash-sharp": 62862,
+  "ios-trending-down": 62863,
+  "ios-trending-down-outline": 62864,
+  "ios-trending-down-sharp": 62865,
+  "ios-trending-up": 62866,
+  "ios-trending-up-outline": 62867,
+  "ios-trending-up-sharp": 62868,
+  "ios-triangle": 62869,
+  "ios-triangle-outline": 62870,
+  "ios-triangle-sharp": 62871,
+  "ios-trophy": 62872,
+  "ios-trophy-outline": 62873,
+  "ios-trophy-sharp": 62874,
+  "ios-tv": 62875,
+  "ios-tv-outline": 62876,
+  "ios-tv-sharp": 62877,
+  "ios-umbrella": 62878,
+  "ios-umbrella-outline": 62879,
+  "ios-umbrella-sharp": 62880,
+  "ios-videocam": 62881,
+  "ios-videocam-outline": 62882,
+  "ios-videocam-sharp": 62883,
+  "ios-volume-high": 62884,
+  "ios-volume-high-outline": 62885,
+  "ios-volume-high-sharp": 62886,
+  "ios-volume-low": 62887,
+  "ios-volume-low-outline": 62888,
+  "ios-volume-low-sharp": 62889,
+  "ios-volume-medium": 62890,
+  "ios-volume-medium-outline": 62891,
+  "ios-volume-medium-sharp": 62892,
+  "ios-volume-mute": 62893,
+  "ios-volume-mute-outline": 62894,
+  "ios-volume-mute-sharp": 62895,
+  "ios-volume-off": 62896,
+  "ios-volume-off-outline": 62897,
+  "ios-volume-off-sharp": 62898,
+  "ios-walk": 62899,
+  "ios-walk-outline": 62900,
+  "ios-walk-sharp": 62901,
+  "ios-wallet": 62902,
+  "ios-wallet-outline": 62903,
+  "ios-wallet-sharp": 62904,
+  "ios-warning": 62905,
+  "ios-warning-outline": 62906,
+  "ios-warning-sharp": 62907,
+  "ios-watch": 62908,
+  "ios-watch-outline": 62909,
+  "ios-watch-sharp": 62910,
+  "ios-water": 62911,
+  "ios-water-outline": 62912,
+  "ios-water-sharp": 62913,
+  "ios-wifi": 62914,
+  "ios-wifi-outline": 62915,
+  "ios-wifi-sharp": 62916,
+  "ios-wine": 62917,
+  "ios-wine-outline": 62918,
+  "ios-wine-sharp": 62919,
+  "ios-woman": 62920,
+  "ios-woman-outline": 62921,
+  "ios-woman-sharp": 62922,
+  "md-add": 61696,
+  "md-add-circle": 61697,
+  "md-add-circle-outline": 61698,
+  "md-add-circle-sharp": 61699,
+  "md-add-outline": 61700,
+  "md-add-sharp": 61701,
+  "md-airplane": 61702,
+  "md-airplane-outline": 61703,
+  "md-airplane-sharp": 61704,
+  "md-alarm": 61705,
+  "md-alarm-outline": 61706,
+  "md-alarm-sharp": 61707,
+  "md-albums": 61708,
+  "md-albums-outline": 61709,
+  "md-albums-sharp": 61710,
+  "md-alert": 61711,
+  "md-alert-circle": 61712,
+  "md-alert-circle-outline": 61713,
+  "md-alert-circle-sharp": 61714,
+  "md-alert-outline": 61715,
+  "md-alert-sharp": 61716,
+  "md-american-football": 61717,
+  "md-american-football-outline": 61718,
+  "md-american-football-sharp": 61719,
+  "md-analytics": 61720,
+  "md-analytics-outline": 61721,
+  "md-analytics-sharp": 61722,
+  "md-aperture": 61723,
+  "md-aperture-outline": 61724,
+  "md-aperture-sharp": 61725,
+  "md-apps": 61726,
+  "md-apps-outline": 61727,
+  "md-apps-sharp": 61728,
+  "md-archive": 61729,
+  "md-archive-outline": 61730,
+  "md-archive-sharp": 61731,
+  "md-arrow-back": 61732,
+  "md-arrow-back-circle": 61733,
+  "md-arrow-back-circle-outline": 61734,
+  "md-arrow-back-circle-sharp": 61735,
+  "md-arrow-back-outline": 61736,
+  "md-arrow-back-sharp": 61737,
+  "md-arrow-down": 61738,
+  "md-arrow-down-circle": 61739,
+  "md-arrow-down-circle-outline": 61740,
+  "md-arrow-down-circle-sharp": 61741,
+  "md-arrow-down-outline": 61742,
+  "md-arrow-down-sharp": 61743,
+  "md-arrow-forward": 61744,
+  "md-arrow-forward-circle": 61745,
+  "md-arrow-forward-circle-outline": 61746,
+  "md-arrow-forward-circle-sharp": 61747,
+  "md-arrow-forward-outline": 61748,
+  "md-arrow-forward-sharp": 61749,
+  "md-arrow-redo": 61750,
+  "md-arrow-redo-circle": 61751,
+  "md-arrow-redo-circle-outline": 61752,
+  "md-arrow-redo-circle-sharp": 61753,
+  "md-arrow-redo-outline": 61754,
+  "md-arrow-redo-sharp": 61755,
+  "md-arrow-undo": 61756,
+  "md-arrow-undo-circle": 61757,
+  "md-arrow-undo-circle-outline": 61758,
+  "md-arrow-undo-circle-sharp": 61759,
+  "md-arrow-undo-outline": 61760,
+  "md-arrow-undo-sharp": 61761,
+  "md-arrow-up": 61762,
+  "md-arrow-up-circle": 61763,
+  "md-arrow-up-circle-outline": 61764,
+  "md-arrow-up-circle-sharp": 61765,
+  "md-arrow-up-outline": 61766,
+  "md-arrow-up-sharp": 61767,
+  "md-at": 61768,
+  "md-at-circle": 61769,
+  "md-at-circle-outline": 61770,
+  "md-at-circle-sharp": 61771,
+  "md-at-outline": 61772,
+  "md-at-sharp": 61773,
+  "md-attach": 61774,
+  "md-attach-outline": 61775,
+  "md-attach-sharp": 61776,
+  "md-backspace": 61777,
+  "md-backspace-outline": 61778,
+  "md-backspace-sharp": 61779,
+  "md-bandage": 61780,
+  "md-bandage-outline": 61781,
+  "md-bandage-sharp": 61782,
+  "md-bar-chart": 61783,
+  "md-bar-chart-outline": 61784,
+  "md-bar-chart-sharp": 61785,
+  "md-barbell": 61786,
+  "md-barbell-outline": 61787,
+  "md-barbell-sharp": 61788,
+  "md-barcode": 61789,
+  "md-barcode-outline": 61790,
+  "md-barcode-sharp": 61791,
+  "md-baseball": 61792,
+  "md-baseball-outline": 61793,
+  "md-baseball-sharp": 61794,
+  "md-basket": 61795,
+  "md-basket-outline": 61796,
+  "md-basket-sharp": 61797,
+  "md-basketball": 61798,
+  "md-basketball-outline": 61799,
+  "md-basketball-sharp": 61800,
+  "md-battery-charging": 61801,
+  "md-battery-charging-outline": 61802,
+  "md-battery-charging-sharp": 61803,
+  "md-battery-dead": 61804,
+  "md-battery-dead-outline": 61805,
+  "md-battery-dead-sharp": 61806,
+  "md-battery-full": 61807,
+  "md-battery-full-outline": 61808,
+  "md-battery-full-sharp": 61809,
+  "md-battery-half": 61810,
+  "md-battery-half-outline": 61811,
+  "md-battery-half-sharp": 61812,
+  "md-beaker": 61813,
+  "md-beaker-outline": 61814,
+  "md-beaker-sharp": 61815,
+  "md-bed": 61816,
+  "md-bed-outline": 61817,
+  "md-bed-sharp": 61818,
+  "md-beer": 61819,
+  "md-beer-outline": 61820,
+  "md-beer-sharp": 61821,
+  "md-bicycle": 61822,
+  "md-bicycle-outline": 61823,
+  "md-bicycle-sharp": 61824,
+  "md-bluetooth": 61825,
+  "md-bluetooth-outline": 61826,
+  "md-bluetooth-sharp": 61827,
+  "md-boat": 61828,
+  "md-boat-outline": 61829,
+  "md-boat-sharp": 61830,
+  "md-body": 61831,
+  "md-body-outline": 61832,
+  "md-body-sharp": 61833,
+  "md-bonfire": 61834,
+  "md-bonfire-outline": 61835,
+  "md-bonfire-sharp": 61836,
+  "md-book": 61837,
+  "md-book-outline": 61838,
+  "md-book-sharp": 61839,
+  "md-bookmark": 61840,
+  "md-bookmark-outline": 61841,
+  "md-bookmark-sharp": 61842,
+  "md-bookmarks": 61843,
+  "md-bookmarks-outline": 61844,
+  "md-bookmarks-sharp": 61845,
+  "md-briefcase": 61846,
+  "md-briefcase-outline": 61847,
+  "md-briefcase-sharp": 61848,
+  "md-browsers": 61849,
+  "md-browsers-outline": 61850,
+  "md-browsers-sharp": 61851,
+  "md-brush": 61852,
+  "md-brush-outline": 61853,
+  "md-brush-sharp": 61854,
+  "md-bug": 61855,
+  "md-bug-outline": 61856,
+  "md-bug-sharp": 61857,
+  "md-build": 61858,
+  "md-build-outline": 61859,
+  "md-build-sharp": 61860,
+  "md-bulb": 61861,
+  "md-bulb-outline": 61862,
+  "md-bulb-sharp": 61863,
+  "md-bus": 61864,
+  "md-bus-outline": 61865,
+  "md-bus-sharp": 61866,
+  "md-business": 61867,
+  "md-business-outline": 61868,
+  "md-business-sharp": 61869,
+  "md-cafe": 61870,
+  "md-cafe-outline": 61871,
+  "md-cafe-sharp": 61872,
+  "md-calculator": 61873,
+  "md-calculator-outline": 61874,
+  "md-calculator-sharp": 61875,
+  "md-calendar": 61876,
+  "md-calendar-outline": 61877,
+  "md-calendar-sharp": 61878,
+  "md-call": 61879,
+  "md-call-outline": 61880,
+  "md-call-sharp": 61881,
+  "md-camera": 61882,
+  "md-camera-outline": 61883,
+  "md-camera-reverse": 61884,
+  "md-camera-reverse-outline": 61885,
+  "md-camera-reverse-sharp": 61886,
+  "md-camera-sharp": 61887,
+  "md-car": 61888,
+  "md-car-outline": 61889,
+  "md-car-sharp": 61890,
+  "md-car-sport": 61891,
+  "md-car-sport-outline": 61892,
+  "md-car-sport-sharp": 61893,
+  "md-card": 61894,
+  "md-card-outline": 61895,
+  "md-card-sharp": 61896,
+  "md-caret-back": 61897,
+  "md-caret-back-circle": 61898,
+  "md-caret-back-circle-outline": 61899,
+  "md-caret-back-circle-sharp": 61900,
+  "md-caret-back-outline": 61901,
+  "md-caret-back-sharp": 61902,
+  "md-caret-down": 61903,
+  "md-caret-down-circle": 61904,
+  "md-caret-down-circle-outline": 61905,
+  "md-caret-down-circle-sharp": 61906,
+  "md-caret-down-outline": 61907,
+  "md-caret-down-sharp": 61908,
+  "md-caret-forward": 61909,
+  "md-caret-forward-circle": 61910,
+  "md-caret-forward-circle-outline": 61911,
+  "md-caret-forward-circle-sharp": 61912,
+  "md-caret-forward-outline": 61913,
+  "md-caret-forward-sharp": 61914,
+  "md-caret-up": 61915,
+  "md-caret-up-circle": 61916,
+  "md-caret-up-circle-outline": 61917,
+  "md-caret-up-circle-sharp": 61918,
+  "md-caret-up-outline": 61919,
+  "md-caret-up-sharp": 61920,
+  "md-cart": 61921,
+  "md-cart-outline": 61922,
+  "md-cart-sharp": 61923,
+  "md-cash": 61924,
+  "md-cash-outline": 61925,
+  "md-cash-sharp": 61926,
+  "md-cellular": 61927,
+  "md-cellular-outline": 61928,
+  "md-cellular-sharp": 61929,
+  "md-chatbox": 61930,
+  "md-chatbox-ellipses": 61931,
+  "md-chatbox-ellipses-outline": 61932,
+  "md-chatbox-ellipses-sharp": 61933,
+  "md-chatbox-outline": 61934,
+  "md-chatbox-sharp": 61935,
+  "md-chatbubble": 61936,
+  "md-chatbubble-ellipses": 61937,
+  "md-chatbubble-ellipses-outline": 61938,
+  "md-chatbubble-ellipses-sharp": 61939,
+  "md-chatbubble-outline": 61940,
+  "md-chatbubble-sharp": 61941,
+  "md-chatbubbles": 61942,
+  "md-chatbubbles-outline": 61943,
+  "md-chatbubbles-sharp": 61944,
+  "md-checkbox": 61945,
+  "md-checkbox-outline": 61946,
+  "md-checkbox-sharp": 61947,
+  "md-checkmark": 61948,
+  "md-checkmark-circle": 61949,
+  "md-checkmark-circle-outline": 61950,
+  "md-checkmark-circle-sharp": 61951,
+  "md-checkmark-done": 61952,
+  "md-checkmark-done-circle": 61953,
+  "md-checkmark-done-circle-outline": 61954,
+  "md-checkmark-done-circle-sharp": 61955,
+  "md-checkmark-done-outline": 61956,
+  "md-checkmark-done-sharp": 61957,
+  "md-checkmark-outline": 61958,
+  "md-checkmark-sharp": 61959,
+  "md-chevron-back": 61960,
+  "md-chevron-back-circle": 61961,
+  "md-chevron-back-circle-outline": 61962,
+  "md-chevron-back-circle-sharp": 61963,
+  "md-chevron-back-outline": 61964,
+  "md-chevron-back-sharp": 61965,
+  "md-chevron-down": 61966,
+  "md-chevron-down-circle": 61967,
+  "md-chevron-down-circle-outline": 61968,
+  "md-chevron-down-circle-sharp": 61969,
+  "md-chevron-down-outline": 61970,
+  "md-chevron-down-sharp": 61971,
+  "md-chevron-forward": 61972,
+  "md-chevron-forward-circle": 61973,
+  "md-chevron-forward-circle-outline": 61974,
+  "md-chevron-forward-circle-sharp": 61975,
+  "md-chevron-forward-outline": 61976,
+  "md-chevron-forward-sharp": 61977,
+  "md-chevron-up": 61978,
+  "md-chevron-up-circle": 61979,
+  "md-chevron-up-circle-outline": 61980,
+  "md-chevron-up-circle-sharp": 61981,
+  "md-chevron-up-outline": 61982,
+  "md-chevron-up-sharp": 61983,
+  "md-clipboard": 61984,
+  "md-clipboard-outline": 61985,
+  "md-clipboard-sharp": 61986,
+  "md-close": 61987,
+  "md-close-circle": 61988,
+  "md-close-circle-outline": 61989,
+  "md-close-circle-sharp": 61990,
+  "md-close-outline": 61991,
+  "md-close-sharp": 61992,
+  "md-cloud": 61993,
+  "md-cloud-circle": 61994,
+  "md-cloud-circle-outline": 61995,
+  "md-cloud-circle-sharp": 61996,
+  "md-cloud-done": 61997,
+  "md-cloud-done-outline": 61998,
+  "md-cloud-done-sharp": 61999,
+  "md-cloud-download": 62000,
+  "md-cloud-download-outline": 62001,
+  "md-cloud-download-sharp": 62002,
+  "md-cloud-offline": 62003,
+  "md-cloud-offline-outline": 62004,
+  "md-cloud-offline-sharp": 62005,
+  "md-cloud-outline": 62006,
+  "md-cloud-sharp": 62007,
+  "md-cloud-upload": 62008,
+  "md-cloud-upload-outline": 62009,
+  "md-cloud-upload-sharp": 62010,
+  "md-cloudy": 62011,
+  "md-cloudy-night": 62012,
+  "md-cloudy-night-outline": 62013,
+  "md-cloudy-night-sharp": 62014,
+  "md-cloudy-outline": 62015,
+  "md-cloudy-sharp": 62016,
+  "md-code": 62017,
+  "md-code-download": 62018,
+  "md-code-download-outline": 62019,
+  "md-code-download-sharp": 62020,
+  "md-code-outline": 62021,
+  "md-code-sharp": 62022,
+  "md-code-slash": 62023,
+  "md-code-slash-outline": 62024,
+  "md-code-slash-sharp": 62025,
+  "md-code-working": 62026,
+  "md-code-working-outline": 62027,
+  "md-code-working-sharp": 62028,
+  "md-cog": 62029,
+  "md-cog-outline": 62030,
+  "md-cog-sharp": 62031,
+  "md-color-fill": 62032,
+  "md-color-fill-outline": 62033,
+  "md-color-fill-sharp": 62034,
+  "md-color-filter": 62035,
+  "md-color-filter-outline": 62036,
+  "md-color-filter-sharp": 62037,
+  "md-color-palette": 62038,
+  "md-color-palette-outline": 62039,
+  "md-color-palette-sharp": 62040,
+  "md-color-wand": 62041,
+  "md-color-wand-outline": 62042,
+  "md-color-wand-sharp": 62043,
+  "md-compass": 62044,
+  "md-compass-outline": 62045,
+  "md-compass-sharp": 62046,
+  "md-construct": 62047,
+  "md-construct-outline": 62048,
+  "md-construct-sharp": 62049,
+  "md-contract": 62050,
+  "md-contract-outline": 62051,
+  "md-contract-sharp": 62052,
+  "md-contrast": 62053,
+  "md-contrast-outline": 62054,
+  "md-contrast-sharp": 62055,
+  "md-copy": 62056,
+  "md-copy-outline": 62057,
+  "md-copy-sharp": 62058,
+  "md-create": 62059,
+  "md-create-outline": 62060,
+  "md-create-sharp": 62061,
+  "md-crop": 62062,
+  "md-crop-outline": 62063,
+  "md-crop-sharp": 62064,
+  "md-cube": 62065,
+  "md-cube-outline": 62066,
+  "md-cube-sharp": 62067,
+  "md-cut": 62068,
+  "md-cut-outline": 62069,
+  "md-cut-sharp": 62070,
+  "md-desktop": 62071,
+  "md-desktop-outline": 62072,
+  "md-desktop-sharp": 62073,
+  "md-disc": 62074,
+  "md-disc-outline": 62075,
+  "md-disc-sharp": 62076,
+  "md-document": 62077,
+  "md-document-attach": 62078,
+  "md-document-attach-outline": 62079,
+  "md-document-attach-sharp": 62080,
+  "md-document-outline": 62081,
+  "md-document-sharp": 62082,
+  "md-document-text": 62083,
+  "md-document-text-outline": 62084,
+  "md-document-text-sharp": 62085,
+  "md-documents": 62086,
+  "md-documents-outline": 62087,
+  "md-documents-sharp": 62088,
+  "md-download": 62089,
+  "md-download-outline": 62090,
+  "md-download-sharp": 62091,
+  "md-duplicate": 62092,
+  "md-duplicate-outline": 62093,
+  "md-duplicate-sharp": 62094,
+  "md-ear": 62095,
+  "md-ear-outline": 62096,
+  "md-ear-sharp": 62097,
+  "md-earth": 62098,
+  "md-earth-outline": 62099,
+  "md-earth-sharp": 62100,
+  "md-easel": 62101,
+  "md-easel-outline": 62102,
+  "md-easel-sharp": 62103,
+  "md-egg": 62104,
+  "md-egg-outline": 62105,
+  "md-egg-sharp": 62106,
+  "md-ellipse": 62107,
+  "md-ellipse-outline": 62108,
+  "md-ellipse-sharp": 62109,
+  "md-ellipsis-horizontal": 62110,
+  "md-ellipsis-horizontal-circle": 62111,
+  "md-ellipsis-horizontal-circle-outline": 62112,
+  "md-ellipsis-horizontal-circle-sharp": 62113,
+  "md-ellipsis-horizontal-outline": 62114,
+  "md-ellipsis-horizontal-sharp": 62115,
+  "md-ellipsis-vertical": 62116,
+  "md-ellipsis-vertical-circle": 62117,
+  "md-ellipsis-vertical-circle-outline": 62118,
+  "md-ellipsis-vertical-circle-sharp": 62119,
+  "md-ellipsis-vertical-outline": 62120,
+  "md-ellipsis-vertical-sharp": 62121,
+  "md-enter": 62122,
+  "md-enter-outline": 62123,
+  "md-enter-sharp": 62124,
+  "md-exit": 62125,
+  "md-exit-outline": 62126,
+  "md-exit-sharp": 62127,
+  "md-expand": 62128,
+  "md-expand-outline": 62129,
+  "md-expand-sharp": 62130,
+  "md-eye": 62131,
+  "md-eye-off": 62132,
+  "md-eye-off-outline": 62133,
+  "md-eye-off-sharp": 62134,
+  "md-eye-outline": 62135,
+  "md-eye-sharp": 62136,
+  "md-eyedrop": 62137,
+  "md-eyedrop-outline": 62138,
+  "md-eyedrop-sharp": 62139,
+  "md-fast-food": 62140,
+  "md-fast-food-outline": 62141,
+  "md-fast-food-sharp": 62142,
+  "md-female": 62143,
+  "md-female-outline": 62144,
+  "md-female-sharp": 62145,
+  "md-file-tray": 62146,
+  "md-file-tray-full": 62147,
+  "md-file-tray-full-outline": 62148,
+  "md-file-tray-full-sharp": 62149,
+  "md-file-tray-outline": 62150,
+  "md-file-tray-sharp": 62151,
+  "md-file-tray-stacked": 62152,
+  "md-file-tray-stacked-outline": 62153,
+  "md-file-tray-stacked-sharp": 62154,
+  "md-film": 62155,
+  "md-film-outline": 62156,
+  "md-film-sharp": 62157,
+  "md-filter": 62158,
+  "md-filter-outline": 62159,
+  "md-filter-sharp": 62160,
+  "md-finger-print": 62161,
+  "md-finger-print-outline": 62162,
+  "md-finger-print-sharp": 62163,
+  "md-fitness": 62164,
+  "md-fitness-outline": 62165,
+  "md-fitness-sharp": 62166,
+  "md-flag": 62167,
+  "md-flag-outline": 62168,
+  "md-flag-sharp": 62169,
+  "md-flame": 62170,
+  "md-flame-outline": 62171,
+  "md-flame-sharp": 62172,
+  "md-flash": 62173,
+  "md-flash-off": 62174,
+  "md-flash-off-outline": 62175,
+  "md-flash-off-sharp": 62176,
+  "md-flash-outline": 62177,
+  "md-flash-sharp": 62178,
+  "md-flashlight": 62179,
+  "md-flashlight-outline": 62180,
+  "md-flashlight-sharp": 62181,
+  "md-flask": 62182,
+  "md-flask-outline": 62183,
+  "md-flask-sharp": 62184,
+  "md-flower": 62185,
+  "md-flower-outline": 62186,
+  "md-flower-sharp": 62187,
+  "md-folder": 62188,
+  "md-folder-open": 62189,
+  "md-folder-open-outline": 62190,
+  "md-folder-open-sharp": 62191,
+  "md-folder-outline": 62192,
+  "md-folder-sharp": 62193,
+  "md-football": 62194,
+  "md-football-outline": 62195,
+  "md-football-sharp": 62196,
+  "md-funnel": 62197,
+  "md-funnel-outline": 62198,
+  "md-funnel-sharp": 62199,
+  "md-game-controller": 62200,
+  "md-game-controller-outline": 62201,
+  "md-game-controller-sharp": 62202,
+  "md-gift": 62203,
+  "md-gift-outline": 62204,
+  "md-gift-sharp": 62205,
+  "md-git-branch": 62206,
+  "md-git-branch-outline": 62207,
+  "md-git-branch-sharp": 62208,
+  "md-git-commit": 62209,
+  "md-git-commit-outline": 62210,
+  "md-git-commit-sharp": 62211,
+  "md-git-compare": 62212,
+  "md-git-compare-outline": 62213,
+  "md-git-compare-sharp": 62214,
+  "md-git-merge": 62215,
+  "md-git-merge-outline": 62216,
+  "md-git-merge-sharp": 62217,
+  "md-git-network": 62218,
+  "md-git-network-outline": 62219,
+  "md-git-network-sharp": 62220,
+  "md-git-pull-request": 62221,
+  "md-git-pull-request-outline": 62222,
+  "md-git-pull-request-sharp": 62223,
+  "md-glasses": 62224,
+  "md-glasses-outline": 62225,
+  "md-glasses-sharp": 62226,
+  "md-globe": 62227,
+  "md-globe-outline": 62228,
+  "md-globe-sharp": 62229,
+  "md-golf": 62230,
+  "md-golf-outline": 62231,
+  "md-golf-sharp": 62232,
+  "md-grid": 62233,
+  "md-grid-outline": 62234,
+  "md-grid-sharp": 62235,
+  "md-hammer": 62236,
+  "md-hammer-outline": 62237,
+  "md-hammer-sharp": 62238,
+  "md-hand-left": 62239,
+  "md-hand-left-outline": 62240,
+  "md-hand-left-sharp": 62241,
+  "md-hand-right": 62242,
+  "md-hand-right-outline": 62243,
+  "md-hand-right-sharp": 62244,
+  "md-happy": 62245,
+  "md-happy-outline": 62246,
+  "md-happy-sharp": 62247,
+  "md-hardware-chip": 62248,
+  "md-hardware-chip-outline": 62249,
+  "md-hardware-chip-sharp": 62250,
+  "md-headset": 62251,
+  "md-headset-outline": 62252,
+  "md-headset-sharp": 62253,
+  "md-heart": 62254,
+  "md-heart-circle": 62255,
+  "md-heart-circle-outline": 62256,
+  "md-heart-circle-sharp": 62257,
+  "md-heart-dislike": 62258,
+  "md-heart-dislike-circle": 62259,
+  "md-heart-dislike-circle-outline": 62260,
+  "md-heart-dislike-circle-sharp": 62261,
+  "md-heart-dislike-outline": 62262,
+  "md-heart-dislike-sharp": 62263,
+  "md-heart-half": 62264,
+  "md-heart-half-outline": 62265,
+  "md-heart-half-sharp": 62266,
+  "md-heart-outline": 62267,
+  "md-heart-sharp": 62268,
+  "md-help": 62269,
+  "md-help-buoy": 62270,
+  "md-help-buoy-outline": 62271,
+  "md-help-buoy-sharp": 62272,
+  "md-help-circle": 62273,
+  "md-help-circle-outline": 62274,
+  "md-help-circle-sharp": 62275,
+  "md-help-outline": 62276,
+  "md-help-sharp": 62277,
+  "md-home": 62278,
+  "md-home-outline": 62279,
+  "md-home-sharp": 62280,
+  "md-hourglass": 62281,
+  "md-hourglass-outline": 62282,
+  "md-hourglass-sharp": 62283,
+  "md-ice-cream": 62284,
+  "md-ice-cream-outline": 62285,
+  "md-ice-cream-sharp": 62286,
+  "md-image": 62287,
+  "md-image-outline": 62288,
+  "md-image-sharp": 62289,
+  "md-images": 62290,
+  "md-images-outline": 62291,
+  "md-images-sharp": 62292,
+  "md-infinite": 62293,
+  "md-infinite-outline": 62294,
+  "md-infinite-sharp": 62295,
+  "md-information": 62296,
+  "md-information-circle": 62297,
+  "md-information-circle-outline": 62298,
+  "md-information-circle-sharp": 62299,
+  "md-information-outline": 62300,
+  "md-information-sharp": 62301,
+  "md-journal": 62302,
+  "md-journal-outline": 62303,
+  "md-journal-sharp": 62304,
+  "md-key": 62305,
+  "md-key-outline": 62306,
+  "md-key-sharp": 62307,
+  "md-keypad": 62308,
+  "md-keypad-outline": 62309,
+  "md-keypad-sharp": 62310,
+  "md-language": 62311,
+  "md-language-outline": 62312,
+  "md-language-sharp": 62313,
+  "md-laptop": 62314,
+  "md-laptop-outline": 62315,
+  "md-laptop-sharp": 62316,
+  "md-layers": 62317,
+  "md-layers-outline": 62318,
+  "md-layers-sharp": 62319,
+  "md-leaf": 62320,
+  "md-leaf-outline": 62321,
+  "md-leaf-sharp": 62322,
+  "md-library": 62323,
+  "md-library-outline": 62324,
+  "md-library-sharp": 62325,
+  "md-link": 62326,
+  "md-link-outline": 62327,
+  "md-link-sharp": 62328,
+  "md-list": 62329,
+  "md-list-circle": 62330,
+  "md-list-circle-outline": 62331,
+  "md-list-circle-sharp": 62332,
+  "md-list-outline": 62333,
+  "md-list-sharp": 62334,
+  "md-locate": 62335,
+  "md-locate-outline": 62336,
+  "md-locate-sharp": 62337,
+  "md-location": 62338,
+  "md-location-outline": 62339,
+  "md-location-sharp": 62340,
+  "md-lock-closed": 62341,
+  "md-lock-closed-outline": 62342,
+  "md-lock-closed-sharp": 62343,
+  "md-lock-open": 62344,
+  "md-lock-open-outline": 62345,
+  "md-lock-open-sharp": 62346,
+  "md-log-in": 62347,
+  "md-log-in-outline": 62348,
+  "md-log-in-sharp": 62349,
+  "md-log-out": 62350,
+  "md-log-out-outline": 62351,
+  "md-log-out-sharp": 62352,
+  "md-logo-amazon": 62353,
+  "md-logo-amplify": 62354,
+  "md-logo-android": 62355,
+  "md-logo-angular": 62356,
+  "md-logo-apple": 62357,
+  "md-logo-apple-appstore": 62358,
+  "md-logo-bitbucket": 62359,
+  "md-logo-bitcoin": 62360,
+  "md-logo-buffer": 62361,
+  "md-logo-capacitor": 62362,
+  "md-logo-chrome": 62363,
+  "md-logo-closed-captioning": 62364,
+  "md-logo-codepen": 62365,
+  "md-logo-css3": 62366,
+  "md-logo-designernews": 62367,
+  "md-logo-dribbble": 62368,
+  "md-logo-dropbox": 62369,
+  "md-logo-edge": 62370,
+  "md-logo-electron": 62371,
+  "md-logo-euro": 62372,
+  "md-logo-facebook": 62373,
+  "md-logo-firebase": 62374,
+  "md-logo-firefox": 62375,
+  "md-logo-flickr": 62376,
+  "md-logo-foursquare": 62377,
+  "md-logo-github": 62378,
+  "md-logo-google": 62379,
+  "md-logo-google-playstore": 62380,
+  "md-logo-hackernews": 62381,
+  "md-logo-html5": 62382,
+  "md-logo-instagram": 62383,
+  "md-logo-ionic": 62384,
+  "md-logo-ionitron": 62385,
+  "md-logo-javascript": 62386,
+  "md-logo-laravel": 62387,
+  "md-logo-linkedin": 62388,
+  "md-logo-markdown": 62389,
+  "md-logo-no-smoking": 62390,
+  "md-logo-nodejs": 62391,
+  "md-logo-npm": 62392,
+  "md-logo-octocat": 62393,
+  "md-logo-pinterest": 62394,
+  "md-logo-playstation": 62395,
+  "md-logo-pwa": 62396,
+  "md-logo-python": 62397,
+  "md-logo-react": 62398,
+  "md-logo-reddit": 62399,
+  "md-logo-rss": 62400,
+  "md-logo-sass": 62401,
+  "md-logo-skype": 62402,
+  "md-logo-slack": 62403,
+  "md-logo-snapchat": 62404,
+  "md-logo-stackoverflow": 62405,
+  "md-logo-steam": 62406,
+  "md-logo-stencil": 62407,
+  "md-logo-tumblr": 62408,
+  "md-logo-tux": 62409,
+  "md-logo-twitch": 62410,
+  "md-logo-twitter": 62411,
+  "md-logo-usd": 62412,
+  "md-logo-vimeo": 62413,
+  "md-logo-vk": 62414,
+  "md-logo-vue": 62415,
+  "md-logo-web-component": 62416,
+  "md-logo-whatsapp": 62417,
+  "md-logo-windows": 62418,
+  "md-logo-wordpress": 62419,
+  "md-logo-xbox": 62420,
+  "md-logo-xing": 62421,
+  "md-logo-yahoo": 62422,
+  "md-logo-yen": 62423,
+  "md-logo-youtube": 62424,
+  "md-magnet": 62425,
+  "md-magnet-outline": 62426,
+  "md-magnet-sharp": 62427,
+  "md-mail": 62428,
+  "md-mail-open": 62429,
+  "md-mail-open-outline": 62430,
+  "md-mail-open-sharp": 62431,
+  "md-mail-outline": 62432,
+  "md-mail-sharp": 62433,
+  "md-mail-unread": 62434,
+  "md-mail-unread-outline": 62435,
+  "md-mail-unread-sharp": 62436,
+  "md-male": 62437,
+  "md-male-female": 62438,
+  "md-male-female-outline": 62439,
+  "md-male-female-sharp": 62440,
+  "md-male-outline": 62441,
+  "md-male-sharp": 62442,
+  "md-man": 62443,
+  "md-man-outline": 62444,
+  "md-man-sharp": 62445,
+  "md-map": 62446,
+  "md-map-outline": 62447,
+  "md-map-sharp": 62448,
+  "md-medal": 62449,
+  "md-medal-outline": 62450,
+  "md-medal-sharp": 62451,
+  "md-medical": 62452,
+  "md-medical-outline": 62453,
+  "md-medical-sharp": 62454,
+  "md-medkit": 62455,
+  "md-medkit-outline": 62456,
+  "md-medkit-sharp": 62457,
+  "md-megaphone": 62458,
+  "md-megaphone-outline": 62459,
+  "md-megaphone-sharp": 62460,
+  "md-menu": 62461,
+  "md-menu-outline": 62462,
+  "md-menu-sharp": 62463,
+  "md-mic": 62464,
+  "md-mic-circle": 62465,
+  "md-mic-circle-outline": 62466,
+  "md-mic-circle-sharp": 62467,
+  "md-mic-off": 62468,
+  "md-mic-off-circle": 62469,
+  "md-mic-off-circle-outline": 62470,
+  "md-mic-off-circle-sharp": 62471,
+  "md-mic-off-outline": 62472,
+  "md-mic-off-sharp": 62473,
+  "md-mic-outline": 62474,
+  "md-mic-sharp": 62475,
+  "md-moon": 62476,
+  "md-moon-outline": 62477,
+  "md-moon-sharp": 62478,
+  "md-move": 62479,
+  "md-move-outline": 62480,
+  "md-move-sharp": 62481,
+  "md-musical-note": 62482,
+  "md-musical-note-outline": 62483,
+  "md-musical-note-sharp": 62484,
+  "md-musical-notes": 62485,
+  "md-musical-notes-outline": 62486,
+  "md-musical-notes-sharp": 62487,
+  "md-navigate": 62488,
+  "md-navigate-circle": 62489,
+  "md-navigate-circle-outline": 62490,
+  "md-navigate-circle-sharp": 62491,
+  "md-navigate-outline": 62492,
+  "md-navigate-sharp": 62493,
+  "md-newspaper": 62494,
+  "md-newspaper-outline": 62495,
+  "md-newspaper-sharp": 62496,
+  "md-notifications": 62497,
+  "md-notifications-circle": 62498,
+  "md-notifications-circle-outline": 62499,
+  "md-notifications-circle-sharp": 62500,
+  "md-notifications-off": 62501,
+  "md-notifications-off-circle": 62502,
+  "md-notifications-off-circle-outline": 62503,
+  "md-notifications-off-circle-sharp": 62504,
+  "md-notifications-off-outline": 62505,
+  "md-notifications-off-sharp": 62506,
+  "md-notifications-outline": 62507,
+  "md-notifications-sharp": 62508,
+  "md-nuclear": 62509,
+  "md-nuclear-outline": 62510,
+  "md-nuclear-sharp": 62511,
+  "md-nutrition": 62512,
+  "md-nutrition-outline": 62513,
+  "md-nutrition-sharp": 62514,
+  "md-open": 62515,
+  "md-open-outline": 62516,
+  "md-open-sharp": 62517,
+  "md-options": 62518,
+  "md-options-outline": 62519,
+  "md-options-sharp": 62520,
+  "md-paper-plane": 62521,
+  "md-paper-plane-outline": 62522,
+  "md-paper-plane-sharp": 62523,
+  "md-partly-sunny": 62524,
+  "md-partly-sunny-outline": 62525,
+  "md-partly-sunny-sharp": 62526,
+  "md-pause": 62527,
+  "md-pause-circle": 62528,
+  "md-pause-circle-outline": 62529,
+  "md-pause-circle-sharp": 62530,
+  "md-pause-outline": 62531,
+  "md-pause-sharp": 62532,
+  "md-paw": 62533,
+  "md-paw-outline": 62534,
+  "md-paw-sharp": 62535,
+  "md-pencil": 62536,
+  "md-pencil-outline": 62537,
+  "md-pencil-sharp": 62538,
+  "md-people": 62539,
+  "md-people-circle": 62540,
+  "md-people-circle-outline": 62541,
+  "md-people-circle-sharp": 62542,
+  "md-people-outline": 62543,
+  "md-people-sharp": 62544,
+  "md-person": 62545,
+  "md-person-add": 62546,
+  "md-person-add-outline": 62547,
+  "md-person-add-sharp": 62548,
+  "md-person-circle": 62549,
+  "md-person-circle-outline": 62550,
+  "md-person-circle-sharp": 62551,
+  "md-person-outline": 62552,
+  "md-person-remove": 62553,
+  "md-person-remove-outline": 62554,
+  "md-person-remove-sharp": 62555,
+  "md-person-sharp": 62556,
+  "md-phone-landscape": 62557,
+  "md-phone-landscape-outline": 62558,
+  "md-phone-landscape-sharp": 62559,
+  "md-phone-portrait": 62560,
+  "md-phone-portrait-outline": 62561,
+  "md-phone-portrait-sharp": 62562,
+  "md-pie-chart": 62563,
+  "md-pie-chart-outline": 62564,
+  "md-pie-chart-sharp": 62565,
+  "md-pin": 62566,
+  "md-pin-outline": 62567,
+  "md-pin-sharp": 62568,
+  "md-pint": 62569,
+  "md-pint-outline": 62570,
+  "md-pint-sharp": 62571,
+  "md-pizza": 62572,
+  "md-pizza-outline": 62573,
+  "md-pizza-sharp": 62574,
+  "md-planet": 62575,
+  "md-planet-outline": 62576,
+  "md-planet-sharp": 62577,
+  "md-play": 62578,
+  "md-play-back": 62579,
+  "md-play-back-circle": 62580,
+  "md-play-back-circle-outline": 62581,
+  "md-play-back-circle-sharp": 62582,
+  "md-play-back-outline": 62583,
+  "md-play-back-sharp": 62584,
+  "md-play-circle": 62585,
+  "md-play-circle-outline": 62586,
+  "md-play-circle-sharp": 62587,
+  "md-play-forward": 62588,
+  "md-play-forward-circle": 62589,
+  "md-play-forward-circle-outline": 62590,
+  "md-play-forward-circle-sharp": 62591,
+  "md-play-forward-outline": 62592,
+  "md-play-forward-sharp": 62593,
+  "md-play-outline": 62594,
+  "md-play-sharp": 62595,
+  "md-play-skip-back": 62596,
+  "md-play-skip-back-circle": 62597,
+  "md-play-skip-back-circle-outline": 62598,
+  "md-play-skip-back-circle-sharp": 62599,
+  "md-play-skip-back-outline": 62600,
+  "md-play-skip-back-sharp": 62601,
+  "md-play-skip-forward": 62602,
+  "md-play-skip-forward-circle": 62603,
+  "md-play-skip-forward-circle-outline": 62604,
+  "md-play-skip-forward-circle-sharp": 62605,
+  "md-play-skip-forward-outline": 62606,
+  "md-play-skip-forward-sharp": 62607,
+  "md-podium": 62608,
+  "md-podium-outline": 62609,
+  "md-podium-sharp": 62610,
+  "md-power": 62611,
+  "md-power-outline": 62612,
+  "md-power-sharp": 62613,
+  "md-pricetag": 62614,
+  "md-pricetag-outline": 62615,
+  "md-pricetag-sharp": 62616,
+  "md-pricetags": 62617,
+  "md-pricetags-outline": 62618,
+  "md-pricetags-sharp": 62619,
+  "md-print": 62620,
+  "md-print-outline": 62621,
+  "md-print-sharp": 62622,
+  "md-pulse": 62623,
+  "md-pulse-outline": 62624,
+  "md-pulse-sharp": 62625,
+  "md-push": 62626,
+  "md-push-outline": 62627,
+  "md-push-sharp": 62628,
+  "md-qr-code": 62629,
+  "md-qr-code-outline": 62630,
+  "md-qr-code-sharp": 62631,
+  "md-radio": 62632,
+  "md-radio-button-off": 62633,
+  "md-radio-button-off-outline": 62634,
+  "md-radio-button-off-sharp": 62635,
+  "md-radio-button-on": 62636,
+  "md-radio-button-on-outline": 62637,
+  "md-radio-button-on-sharp": 62638,
+  "md-radio-outline": 62639,
+  "md-radio-sharp": 62640,
+  "md-rainy": 62641,
+  "md-rainy-outline": 62642,
+  "md-rainy-sharp": 62643,
+  "md-reader": 62644,
+  "md-reader-outline": 62645,
+  "md-reader-sharp": 62646,
+  "md-receipt": 62647,
+  "md-receipt-outline": 62648,
+  "md-receipt-sharp": 62649,
+  "md-recording": 62650,
+  "md-recording-outline": 62651,
+  "md-recording-sharp": 62652,
+  "md-refresh": 62653,
+  "md-refresh-circle": 62654,
+  "md-refresh-circle-outline": 62655,
+  "md-refresh-circle-sharp": 62656,
+  "md-refresh-outline": 62657,
+  "md-refresh-sharp": 62658,
+  "md-reload": 62659,
+  "md-reload-circle": 62660,
+  "md-reload-circle-outline": 62661,
+  "md-reload-circle-sharp": 62662,
+  "md-reload-outline": 62663,
+  "md-reload-sharp": 62664,
+  "md-remove": 62665,
+  "md-remove-circle": 62666,
+  "md-remove-circle-outline": 62667,
+  "md-remove-circle-sharp": 62668,
+  "md-remove-outline": 62669,
+  "md-remove-sharp": 62670,
+  "md-reorder-four": 62671,
+  "md-reorder-four-outline": 62672,
+  "md-reorder-four-sharp": 62673,
+  "md-reorder-three": 62674,
+  "md-reorder-three-outline": 62675,
+  "md-reorder-three-sharp": 62676,
+  "md-reorder-two": 62677,
+  "md-reorder-two-outline": 62678,
+  "md-reorder-two-sharp": 62679,
+  "md-repeat": 62680,
+  "md-repeat-outline": 62681,
+  "md-repeat-sharp": 62682,
+  "md-resize": 62683,
+  "md-resize-outline": 62684,
+  "md-resize-sharp": 62685,
+  "md-restaurant": 62686,
+  "md-restaurant-outline": 62687,
+  "md-restaurant-sharp": 62688,
+  "md-return-down-back": 62689,
+  "md-return-down-back-outline": 62690,
+  "md-return-down-back-sharp": 62691,
+  "md-return-down-forward": 62692,
+  "md-return-down-forward-outline": 62693,
+  "md-return-down-forward-sharp": 62694,
+  "md-return-up-back": 62695,
+  "md-return-up-back-outline": 62696,
+  "md-return-up-back-sharp": 62697,
+  "md-return-up-forward": 62698,
+  "md-return-up-forward-outline": 62699,
+  "md-return-up-forward-sharp": 62700,
+  "md-ribbon": 62701,
+  "md-ribbon-outline": 62702,
+  "md-ribbon-sharp": 62703,
+  "md-rocket": 62704,
+  "md-rocket-outline": 62705,
+  "md-rocket-sharp": 62706,
+  "md-rose": 62707,
+  "md-rose-outline": 62708,
+  "md-rose-sharp": 62709,
+  "md-sad": 62710,
+  "md-sad-outline": 62711,
+  "md-sad-sharp": 62712,
+  "md-save": 62713,
+  "md-save-outline": 62714,
+  "md-save-sharp": 62715,
+  "md-scan": 62716,
+  "md-scan-circle": 62717,
+  "md-scan-circle-outline": 62718,
+  "md-scan-circle-sharp": 62719,
+  "md-scan-outline": 62720,
+  "md-scan-sharp": 62721,
+  "md-school": 62722,
+  "md-school-outline": 62723,
+  "md-school-sharp": 62724,
+  "md-search": 62725,
+  "md-search-circle": 62726,
+  "md-search-circle-outline": 62727,
+  "md-search-circle-sharp": 62728,
+  "md-search-outline": 62729,
+  "md-search-sharp": 62730,
+  "md-send": 62731,
+  "md-send-outline": 62732,
+  "md-send-sharp": 62733,
+  "md-server": 62734,
+  "md-server-outline": 62735,
+  "md-server-sharp": 62736,
+  "md-settings": 62737,
+  "md-settings-outline": 62738,
+  "md-settings-sharp": 62739,
+  "md-shapes": 62740,
+  "md-shapes-outline": 62741,
+  "md-shapes-sharp": 62742,
+  "md-share": 62743,
+  "md-share-outline": 62744,
+  "md-share-sharp": 62745,
+  "md-share-social": 62746,
+  "md-share-social-outline": 62747,
+  "md-share-social-sharp": 62748,
+  "md-shield": 62749,
+  "md-shield-checkmark": 62750,
+  "md-shield-checkmark-outline": 62751,
+  "md-shield-checkmark-sharp": 62752,
+  "md-shield-outline": 62753,
+  "md-shield-sharp": 62754,
+  "md-shirt": 62755,
+  "md-shirt-outline": 62756,
+  "md-shirt-sharp": 62757,
+  "md-shuffle": 62758,
+  "md-shuffle-outline": 62759,
+  "md-shuffle-sharp": 62760,
+  "md-skull": 62761,
+  "md-skull-outline": 62762,
+  "md-skull-sharp": 62763,
+  "md-snow": 62764,
+  "md-snow-outline": 62765,
+  "md-snow-sharp": 62766,
+  "md-speedometer": 62767,
+  "md-speedometer-outline": 62768,
+  "md-speedometer-sharp": 62769,
+  "md-square": 62770,
+  "md-square-outline": 62771,
+  "md-square-sharp": 62772,
+  "md-star": 62773,
+  "md-star-half": 62774,
+  "md-star-half-outline": 62775,
+  "md-star-half-sharp": 62776,
+  "md-star-outline": 62777,
+  "md-star-sharp": 62778,
+  "md-stats-chart": 62779,
+  "md-stats-chart-outline": 62780,
+  "md-stats-chart-sharp": 62781,
+  "md-stop": 62782,
+  "md-stop-circle": 62783,
+  "md-stop-circle-outline": 62784,
+  "md-stop-circle-sharp": 62785,
+  "md-stop-outline": 62786,
+  "md-stop-sharp": 62787,
+  "md-stopwatch": 62788,
+  "md-stopwatch-outline": 62789,
+  "md-stopwatch-sharp": 62790,
+  "md-subway": 62791,
+  "md-subway-outline": 62792,
+  "md-subway-sharp": 62793,
+  "md-sunny": 62794,
+  "md-sunny-outline": 62795,
+  "md-sunny-sharp": 62796,
+  "md-swap-horizontal": 62797,
+  "md-swap-horizontal-outline": 62798,
+  "md-swap-horizontal-sharp": 62799,
+  "md-swap-vertical": 62800,
+  "md-swap-vertical-outline": 62801,
+  "md-swap-vertical-sharp": 62802,
+  "md-sync": 62803,
+  "md-sync-circle": 62804,
+  "md-sync-circle-outline": 62805,
+  "md-sync-circle-sharp": 62806,
+  "md-sync-outline": 62807,
+  "md-sync-sharp": 62808,
+  "md-tablet-landscape": 62809,
+  "md-tablet-landscape-outline": 62810,
+  "md-tablet-landscape-sharp": 62811,
+  "md-tablet-portrait": 62812,
+  "md-tablet-portrait-outline": 62813,
+  "md-tablet-portrait-sharp": 62814,
+  "md-tennisball": 62815,
+  "md-tennisball-outline": 62816,
+  "md-tennisball-sharp": 62817,
+  "md-terminal": 62818,
+  "md-terminal-outline": 62819,
+  "md-terminal-sharp": 62820,
+  "md-text": 62821,
+  "md-text-outline": 62822,
+  "md-text-sharp": 62823,
+  "md-thermometer": 62824,
+  "md-thermometer-outline": 62825,
+  "md-thermometer-sharp": 62826,
+  "md-thumbs-down": 62827,
+  "md-thumbs-down-outline": 62828,
+  "md-thumbs-down-sharp": 62829,
+  "md-thumbs-up": 62830,
+  "md-thumbs-up-outline": 62831,
+  "md-thumbs-up-sharp": 62832,
+  "md-thunderstorm": 62833,
+  "md-thunderstorm-outline": 62834,
+  "md-thunderstorm-sharp": 62835,
+  "md-time": 62836,
+  "md-time-outline": 62837,
+  "md-time-sharp": 62838,
+  "md-timer": 62839,
+  "md-timer-outline": 62840,
+  "md-timer-sharp": 62841,
+  "md-today": 62842,
+  "md-today-outline": 62843,
+  "md-today-sharp": 62844,
+  "md-toggle": 62845,
+  "md-toggle-outline": 62846,
+  "md-toggle-sharp": 62847,
+  "md-trail-sign": 62848,
+  "md-trail-sign-outline": 62849,
+  "md-trail-sign-sharp": 62850,
+  "md-train": 62851,
+  "md-train-outline": 62852,
+  "md-train-sharp": 62853,
+  "md-transgender": 62854,
+  "md-transgender-outline": 62855,
+  "md-transgender-sharp": 62856,
+  "md-trash": 62857,
+  "md-trash-bin": 62858,
+  "md-trash-bin-outline": 62859,
+  "md-trash-bin-sharp": 62860,
+  "md-trash-outline": 62861,
+  "md-trash-sharp": 62862,
+  "md-trending-down": 62863,
+  "md-trending-down-outline": 62864,
+  "md-trending-down-sharp": 62865,
+  "md-trending-up": 62866,
+  "md-trending-up-outline": 62867,
+  "md-trending-up-sharp": 62868,
+  "md-triangle": 62869,
+  "md-triangle-outline": 62870,
+  "md-triangle-sharp": 62871,
+  "md-trophy": 62872,
+  "md-trophy-outline": 62873,
+  "md-trophy-sharp": 62874,
+  "md-tv": 62875,
+  "md-tv-outline": 62876,
+  "md-tv-sharp": 62877,
+  "md-umbrella": 62878,
+  "md-umbrella-outline": 62879,
+  "md-umbrella-sharp": 62880,
+  "md-videocam": 62881,
+  "md-videocam-outline": 62882,
+  "md-videocam-sharp": 62883,
+  "md-volume-high": 62884,
+  "md-volume-high-outline": 62885,
+  "md-volume-high-sharp": 62886,
+  "md-volume-low": 62887,
+  "md-volume-low-outline": 62888,
+  "md-volume-low-sharp": 62889,
+  "md-volume-medium": 62890,
+  "md-volume-medium-outline": 62891,
+  "md-volume-medium-sharp": 62892,
+  "md-volume-mute": 62893,
+  "md-volume-mute-outline": 62894,
+  "md-volume-mute-sharp": 62895,
+  "md-volume-off": 62896,
+  "md-volume-off-outline": 62897,
+  "md-volume-off-sharp": 62898,
+  "md-walk": 62899,
+  "md-walk-outline": 62900,
+  "md-walk-sharp": 62901,
+  "md-wallet": 62902,
+  "md-wallet-outline": 62903,
+  "md-wallet-sharp": 62904,
+  "md-warning": 62905,
+  "md-warning-outline": 62906,
+  "md-warning-sharp": 62907,
+  "md-watch": 62908,
+  "md-watch-outline": 62909,
+  "md-watch-sharp": 62910,
+  "md-water": 62911,
+  "md-water-outline": 62912,
+  "md-water-sharp": 62913,
+  "md-wifi": 62914,
+  "md-wifi-outline": 62915,
+  "md-wifi-sharp": 62916,
+  "md-wine": 62917,
+  "md-wine-outline": 62918,
+  "md-wine-sharp": 62919,
+  "md-woman": 62920,
+  "md-woman-outline": 62921,
+  "md-woman-sharp": 62922
+}

+ 5348 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_materialcommunityicons.json

@@ -0,0 +1,5348 @@
+{
+  "ab-testing": 983497,
+  "abjad-arabic": 987944,
+  "abjad-hebrew": 987945,
+  "abugida-devanagari": 987946,
+  "abugida-thai": 987947,
+  "access-point": 983043,
+  "access-point-network": 983042,
+  "access-point-network-off": 986081,
+  "account": 983044,
+  "account-alert": 983045,
+  "account-alert-outline": 985936,
+  "account-arrow-left": 985937,
+  "account-arrow-left-outline": 985938,
+  "account-arrow-right": 985939,
+  "account-arrow-right-outline": 985940,
+  "account-box": 983046,
+  "account-box-multiple": 985396,
+  "account-box-multiple-outline": 987146,
+  "account-box-outline": 983047,
+  "account-cancel": 987871,
+  "account-cancel-outline": 987872,
+  "account-cash": 987287,
+  "account-cash-outline": 987288,
+  "account-check": 983048,
+  "account-check-outline": 986082,
+  "account-child": 985737,
+  "account-child-circle": 985738,
+  "account-child-outline": 987336,
+  "account-circle": 983049,
+  "account-circle-outline": 985941,
+  "account-clock": 985942,
+  "account-clock-outline": 985943,
+  "account-cog": 988016,
+  "account-cog-outline": 988017,
+  "account-convert": 983050,
+  "account-convert-outline": 987905,
+  "account-cowboy-hat": 986779,
+  "account-details": 984625,
+  "account-details-outline": 988018,
+  "account-edit": 984764,
+  "account-edit-outline": 987131,
+  "account-group": 985161,
+  "account-group-outline": 985944,
+  "account-hard-hat": 984501,
+  "account-heart": 985241,
+  "account-heart-outline": 986083,
+  "account-key": 983051,
+  "account-key-outline": 986084,
+  "account-lock": 987486,
+  "account-lock-outline": 987487,
+  "account-minus": 983053,
+  "account-minus-outline": 985836,
+  "account-multiple": 983054,
+  "account-multiple-check": 985285,
+  "account-multiple-check-outline": 987646,
+  "account-multiple-minus": 984531,
+  "account-multiple-minus-outline": 986085,
+  "account-multiple-outline": 983055,
+  "account-multiple-plus": 983056,
+  "account-multiple-plus-outline": 985088,
+  "account-multiple-remove": 987658,
+  "account-multiple-remove-outline": 987659,
+  "account-music": 985091,
+  "account-music-outline": 986345,
+  "account-network": 983057,
+  "account-network-outline": 986086,
+  "account-off": 983058,
+  "account-off-outline": 986087,
+  "account-outline": 983059,
+  "account-plus": 983060,
+  "account-plus-outline": 985089,
+  "account-question": 985945,
+  "account-question-outline": 985946,
+  "account-remove": 983061,
+  "account-remove-outline": 985837,
+  "account-search": 983062,
+  "account-search-outline": 985397,
+  "account-settings": 984624,
+  "account-settings-outline": 987337,
+  "account-star": 983063,
+  "account-star-outline": 986088,
+  "account-supervisor": 985739,
+  "account-supervisor-circle": 985740,
+  "account-supervisor-outline": 987437,
+  "account-switch": 983065,
+  "account-switch-outline": 984267,
+  "account-tie": 986339,
+  "account-tie-outline": 987338,
+  "account-tie-voice": 987912,
+  "account-tie-voice-off": 987914,
+  "account-tie-voice-off-outline": 987915,
+  "account-tie-voice-outline": 987913,
+  "account-voice": 984523,
+  "adjust": 983066,
+  "adobe": 985398,
+  "adobe-acrobat": 987037,
+  "air-conditioner": 983067,
+  "air-filter": 986435,
+  "air-horn": 986540,
+  "air-humidifier": 987289,
+  "air-humidifier-off": 988262,
+  "air-purifier": 986436,
+  "airbag": 986089,
+  "airballoon": 983068,
+  "airballoon-outline": 987147,
+  "airplane": 983069,
+  "airplane-landing": 984532,
+  "airplane-off": 983070,
+  "airplane-takeoff": 984533,
+  "airport": 985163,
+  "alarm": 983072,
+  "alarm-bell": 984974,
+  "alarm-check": 983073,
+  "alarm-light": 984975,
+  "alarm-light-outline": 986090,
+  "alarm-multiple": 983074,
+  "alarm-note": 986737,
+  "alarm-note-off": 986738,
+  "alarm-off": 983075,
+  "alarm-plus": 983076,
+  "alarm-snooze": 984718,
+  "album": 983077,
+  "alert": 983078,
+  "alert-box": 983079,
+  "alert-box-outline": 986340,
+  "alert-circle": 983080,
+  "alert-circle-check": 987629,
+  "alert-circle-check-outline": 987630,
+  "alert-circle-outline": 984534,
+  "alert-decagram": 984765,
+  "alert-decagram-outline": 986341,
+  "alert-minus": 988347,
+  "alert-minus-outline": 988350,
+  "alert-octagon": 983081,
+  "alert-octagon-outline": 986342,
+  "alert-octagram": 984935,
+  "alert-octagram-outline": 986343,
+  "alert-outline": 983082,
+  "alert-plus": 988346,
+  "alert-plus-outline": 988349,
+  "alert-remove": 988348,
+  "alert-remove-outline": 988351,
+  "alert-rhombus": 987598,
+  "alert-rhombus-outline": 987599,
+  "alien": 985242,
+  "alien-outline": 987339,
+  "align-horizontal-center": 987587,
+  "align-horizontal-left": 987586,
+  "align-horizontal-right": 987588,
+  "align-vertical-bottom": 987589,
+  "align-vertical-center": 987590,
+  "align-vertical-top": 987591,
+  "all-inclusive": 984766,
+  "allergy": 987736,
+  "alpha": 983083,
+  "alpha-a": 985838,
+  "alpha-a-box": 985864,
+  "alpha-a-box-outline": 986091,
+  "alpha-a-circle": 986092,
+  "alpha-a-circle-outline": 986093,
+  "alpha-b": 985839,
+  "alpha-b-box": 985865,
+  "alpha-b-box-outline": 986094,
+  "alpha-b-circle": 986095,
+  "alpha-b-circle-outline": 986096,
+  "alpha-c": 985840,
+  "alpha-c-box": 985866,
+  "alpha-c-box-outline": 986097,
+  "alpha-c-circle": 986098,
+  "alpha-c-circle-outline": 986099,
+  "alpha-d": 985841,
+  "alpha-d-box": 985867,
+  "alpha-d-box-outline": 986100,
+  "alpha-d-circle": 986101,
+  "alpha-d-circle-outline": 986102,
+  "alpha-e": 985842,
+  "alpha-e-box": 985868,
+  "alpha-e-box-outline": 986103,
+  "alpha-e-circle": 986104,
+  "alpha-e-circle-outline": 986105,
+  "alpha-f": 985843,
+  "alpha-f-box": 985869,
+  "alpha-f-box-outline": 986106,
+  "alpha-f-circle": 986107,
+  "alpha-f-circle-outline": 986108,
+  "alpha-g": 985844,
+  "alpha-g-box": 985870,
+  "alpha-g-box-outline": 986109,
+  "alpha-g-circle": 986110,
+  "alpha-g-circle-outline": 986111,
+  "alpha-h": 985845,
+  "alpha-h-box": 985871,
+  "alpha-h-box-outline": 986112,
+  "alpha-h-circle": 986113,
+  "alpha-h-circle-outline": 986114,
+  "alpha-i": 985846,
+  "alpha-i-box": 985872,
+  "alpha-i-box-outline": 986115,
+  "alpha-i-circle": 986116,
+  "alpha-i-circle-outline": 986117,
+  "alpha-j": 985847,
+  "alpha-j-box": 985873,
+  "alpha-j-box-outline": 986118,
+  "alpha-j-circle": 986119,
+  "alpha-j-circle-outline": 986120,
+  "alpha-k": 985848,
+  "alpha-k-box": 985874,
+  "alpha-k-box-outline": 986121,
+  "alpha-k-circle": 986122,
+  "alpha-k-circle-outline": 986123,
+  "alpha-l": 985849,
+  "alpha-l-box": 985875,
+  "alpha-l-box-outline": 986124,
+  "alpha-l-circle": 986125,
+  "alpha-l-circle-outline": 986126,
+  "alpha-m": 985850,
+  "alpha-m-box": 985876,
+  "alpha-m-box-outline": 986127,
+  "alpha-m-circle": 986128,
+  "alpha-m-circle-outline": 986129,
+  "alpha-n": 985851,
+  "alpha-n-box": 985877,
+  "alpha-n-box-outline": 986130,
+  "alpha-n-circle": 986131,
+  "alpha-n-circle-outline": 986132,
+  "alpha-o": 985852,
+  "alpha-o-box": 985878,
+  "alpha-o-box-outline": 986133,
+  "alpha-o-circle": 986134,
+  "alpha-o-circle-outline": 986135,
+  "alpha-p": 985853,
+  "alpha-p-box": 985879,
+  "alpha-p-box-outline": 986136,
+  "alpha-p-circle": 986137,
+  "alpha-p-circle-outline": 986138,
+  "alpha-q": 985854,
+  "alpha-q-box": 985880,
+  "alpha-q-box-outline": 986139,
+  "alpha-q-circle": 986140,
+  "alpha-q-circle-outline": 986141,
+  "alpha-r": 985855,
+  "alpha-r-box": 985881,
+  "alpha-r-box-outline": 986142,
+  "alpha-r-circle": 986143,
+  "alpha-r-circle-outline": 986144,
+  "alpha-s": 985856,
+  "alpha-s-box": 985882,
+  "alpha-s-box-outline": 986145,
+  "alpha-s-circle": 986146,
+  "alpha-s-circle-outline": 986147,
+  "alpha-t": 985857,
+  "alpha-t-box": 985883,
+  "alpha-t-box-outline": 986148,
+  "alpha-t-circle": 986149,
+  "alpha-t-circle-outline": 986150,
+  "alpha-u": 985858,
+  "alpha-u-box": 985884,
+  "alpha-u-box-outline": 986151,
+  "alpha-u-circle": 986152,
+  "alpha-u-circle-outline": 986153,
+  "alpha-v": 985859,
+  "alpha-v-box": 985885,
+  "alpha-v-box-outline": 986154,
+  "alpha-v-circle": 986155,
+  "alpha-v-circle-outline": 986156,
+  "alpha-w": 985860,
+  "alpha-w-box": 985886,
+  "alpha-w-box-outline": 986157,
+  "alpha-w-circle": 986158,
+  "alpha-w-circle-outline": 986159,
+  "alpha-x": 985861,
+  "alpha-x-box": 985887,
+  "alpha-x-box-outline": 986160,
+  "alpha-x-circle": 986161,
+  "alpha-x-circle-outline": 986162,
+  "alpha-y": 985862,
+  "alpha-y-box": 985888,
+  "alpha-y-box-outline": 986163,
+  "alpha-y-circle": 986164,
+  "alpha-y-circle-outline": 986165,
+  "alpha-z": 985863,
+  "alpha-z-box": 985889,
+  "alpha-z-box-outline": 986166,
+  "alpha-z-circle": 986167,
+  "alpha-z-circle-outline": 986168,
+  "alphabet-aurebesh": 987948,
+  "alphabet-cyrillic": 987949,
+  "alphabet-greek": 987950,
+  "alphabet-latin": 987951,
+  "alphabet-piqad": 987952,
+  "alphabet-tengwar": 987959,
+  "alphabetical": 983084,
+  "alphabetical-off": 987148,
+  "alphabetical-variant": 987149,
+  "alphabetical-variant-off": 987150,
+  "altimeter": 984535,
+  "amazon": 983085,
+  "amazon-alexa": 985286,
+  "ambulance": 983087,
+  "ammunition": 986344,
+  "ampersand": 985741,
+  "amplifier": 983088,
+  "amplifier-off": 987573,
+  "anchor": 983089,
+  "android": 983090,
+  "android-auto": 985742,
+  "android-debug-bridge": 983091,
+  "android-messages": 986437,
+  "android-studio": 983092,
+  "angle-acute": 985399,
+  "angle-obtuse": 985400,
+  "angle-right": 985401,
+  "angular": 984754,
+  "angularjs": 984767,
+  "animation": 984536,
+  "animation-outline": 985743,
+  "animation-play": 985402,
+  "animation-play-outline": 985744,
+  "ansible": 987290,
+  "antenna": 987417,
+  "anvil": 985243,
+  "apache-kafka": 987151,
+  "api": 987291,
+  "api-off": 987735,
+  "apple": 983093,
+  "apple-airplay": 983071,
+  "apple-finder": 983094,
+  "apple-icloud": 983096,
+  "apple-ios": 983095,
+  "apple-keyboard-caps": 984626,
+  "apple-keyboard-command": 984627,
+  "apple-keyboard-control": 984628,
+  "apple-keyboard-option": 984629,
+  "apple-keyboard-shift": 984630,
+  "apple-safari": 983097,
+  "application": 984596,
+  "application-export": 986541,
+  "application-import": 986542,
+  "approximately-equal": 987038,
+  "approximately-equal-box": 987039,
+  "apps": 983099,
+  "apps-box": 986438,
+  "arch": 985287,
+  "archive": 983100,
+  "archive-arrow-down": 987737,
+  "archive-arrow-down-outline": 987738,
+  "archive-arrow-up": 987739,
+  "archive-arrow-up-outline": 987740,
+  "archive-outline": 987662,
+  "arm-flex": 987095,
+  "arm-flex-outline": 987094,
+  "arrange-bring-forward": 983101,
+  "arrange-bring-to-front": 983102,
+  "arrange-send-backward": 983103,
+  "arrange-send-to-back": 983104,
+  "arrow-all": 983105,
+  "arrow-bottom-left": 983106,
+  "arrow-bottom-left-bold-outline": 985527,
+  "arrow-bottom-left-thick": 985528,
+  "arrow-bottom-right": 983107,
+  "arrow-bottom-right-bold-outline": 985529,
+  "arrow-bottom-right-thick": 985530,
+  "arrow-collapse": 984597,
+  "arrow-collapse-all": 983108,
+  "arrow-collapse-down": 984978,
+  "arrow-collapse-horizontal": 985164,
+  "arrow-collapse-left": 984979,
+  "arrow-collapse-right": 984980,
+  "arrow-collapse-up": 984981,
+  "arrow-collapse-vertical": 985165,
+  "arrow-decision": 985531,
+  "arrow-decision-auto": 985532,
+  "arrow-decision-auto-outline": 985533,
+  "arrow-decision-outline": 985534,
+  "arrow-down": 983109,
+  "arrow-down-bold": 984878,
+  "arrow-down-bold-box": 984879,
+  "arrow-down-bold-box-outline": 984880,
+  "arrow-down-bold-circle": 983111,
+  "arrow-down-bold-circle-outline": 983112,
+  "arrow-down-bold-hexagon-outline": 983113,
+  "arrow-down-bold-outline": 985535,
+  "arrow-down-box": 984768,
+  "arrow-down-circle": 986331,
+  "arrow-down-circle-outline": 986332,
+  "arrow-down-drop-circle": 983114,
+  "arrow-down-drop-circle-outline": 983115,
+  "arrow-down-thick": 983110,
+  "arrow-expand": 984598,
+  "arrow-expand-all": 983116,
+  "arrow-expand-down": 984982,
+  "arrow-expand-horizontal": 985166,
+  "arrow-expand-left": 984983,
+  "arrow-expand-right": 984984,
+  "arrow-expand-up": 984985,
+  "arrow-expand-vertical": 985167,
+  "arrow-horizontal-lock": 987483,
+  "arrow-left": 983117,
+  "arrow-left-bold": 984881,
+  "arrow-left-bold-box": 984882,
+  "arrow-left-bold-box-outline": 984883,
+  "arrow-left-bold-circle": 983119,
+  "arrow-left-bold-circle-outline": 983120,
+  "arrow-left-bold-hexagon-outline": 983121,
+  "arrow-left-bold-outline": 985536,
+  "arrow-left-box": 984769,
+  "arrow-left-circle": 986333,
+  "arrow-left-circle-outline": 986334,
+  "arrow-left-drop-circle": 983122,
+  "arrow-left-drop-circle-outline": 983123,
+  "arrow-left-right": 986739,
+  "arrow-left-right-bold": 986740,
+  "arrow-left-right-bold-outline": 985537,
+  "arrow-left-thick": 983118,
+  "arrow-right": 983124,
+  "arrow-right-bold": 984884,
+  "arrow-right-bold-box": 984885,
+  "arrow-right-bold-box-outline": 984886,
+  "arrow-right-bold-circle": 983126,
+  "arrow-right-bold-circle-outline": 983127,
+  "arrow-right-bold-hexagon-outline": 983128,
+  "arrow-right-bold-outline": 985538,
+  "arrow-right-box": 984770,
+  "arrow-right-circle": 986335,
+  "arrow-right-circle-outline": 986336,
+  "arrow-right-drop-circle": 983129,
+  "arrow-right-drop-circle-outline": 983130,
+  "arrow-right-thick": 983125,
+  "arrow-split-horizontal": 985403,
+  "arrow-split-vertical": 985404,
+  "arrow-top-left": 983131,
+  "arrow-top-left-bold-outline": 985539,
+  "arrow-top-left-bottom-right": 986741,
+  "arrow-top-left-bottom-right-bold": 986742,
+  "arrow-top-left-thick": 985540,
+  "arrow-top-right": 983132,
+  "arrow-top-right-bold-outline": 985541,
+  "arrow-top-right-bottom-left": 986743,
+  "arrow-top-right-bottom-left-bold": 986744,
+  "arrow-top-right-thick": 985542,
+  "arrow-up": 983133,
+  "arrow-up-bold": 984887,
+  "arrow-up-bold-box": 984888,
+  "arrow-up-bold-box-outline": 984889,
+  "arrow-up-bold-circle": 983135,
+  "arrow-up-bold-circle-outline": 983136,
+  "arrow-up-bold-hexagon-outline": 983137,
+  "arrow-up-bold-outline": 985543,
+  "arrow-up-box": 984771,
+  "arrow-up-circle": 986337,
+  "arrow-up-circle-outline": 986338,
+  "arrow-up-down": 986745,
+  "arrow-up-down-bold": 986746,
+  "arrow-up-down-bold-outline": 985544,
+  "arrow-up-drop-circle": 983138,
+  "arrow-up-drop-circle-outline": 983139,
+  "arrow-up-thick": 983134,
+  "arrow-vertical-lock": 987484,
+  "artstation": 985947,
+  "aspect-ratio": 985636,
+  "assistant": 983140,
+  "asterisk": 984772,
+  "at": 983141,
+  "atlassian": 985092,
+  "atm": 986439,
+  "atom": 984936,
+  "atom-variant": 986747,
+  "attachment": 983142,
+  "audio-video": 985405,
+  "audio-video-off": 987574,
+  "augmented-reality": 985168,
+  "auto-download": 988030,
+  "auto-fix": 983144,
+  "auto-upload": 983145,
+  "autorenew": 983146,
+  "av-timer": 983147,
+  "aws": 986639,
+  "axe": 985288,
+  "axis": 986440,
+  "axis-arrow": 986441,
+  "axis-arrow-info": 988174,
+  "axis-arrow-lock": 986442,
+  "axis-lock": 986443,
+  "axis-x-arrow": 986444,
+  "axis-x-arrow-lock": 986445,
+  "axis-x-rotate-clockwise": 986446,
+  "axis-x-rotate-counterclockwise": 986447,
+  "axis-x-y-arrow-lock": 986448,
+  "axis-y-arrow": 986449,
+  "axis-y-arrow-lock": 986450,
+  "axis-y-rotate-clockwise": 986451,
+  "axis-y-rotate-counterclockwise": 986452,
+  "axis-z-arrow": 986453,
+  "axis-z-arrow-lock": 986454,
+  "axis-z-rotate-clockwise": 986455,
+  "axis-z-rotate-counterclockwise": 986456,
+  "babel": 985637,
+  "baby": 983148,
+  "baby-bottle": 986937,
+  "baby-bottle-outline": 986938,
+  "baby-buggy": 988128,
+  "baby-carriage": 984719,
+  "baby-carriage-off": 987040,
+  "baby-face": 986748,
+  "baby-face-outline": 986749,
+  "backburger": 983149,
+  "backspace": 983150,
+  "backspace-outline": 985948,
+  "backspace-reverse": 986750,
+  "backspace-reverse-outline": 986751,
+  "backup-restore": 983151,
+  "bacteria": 986837,
+  "bacteria-outline": 986838,
+  "badge-account": 986535,
+  "badge-account-alert": 986536,
+  "badge-account-alert-outline": 986537,
+  "badge-account-horizontal": 986637,
+  "badge-account-horizontal-outline": 986638,
+  "badge-account-outline": 986538,
+  "badminton": 985169,
+  "bag-carry-on": 986939,
+  "bag-carry-on-check": 986469,
+  "bag-carry-on-off": 986940,
+  "bag-checked": 986941,
+  "bag-personal": 986640,
+  "bag-personal-off": 986641,
+  "bag-personal-off-outline": 986642,
+  "bag-personal-outline": 986643,
+  "baguette": 986942,
+  "balloon": 985638,
+  "ballot": 985545,
+  "ballot-outline": 985546,
+  "ballot-recount": 986169,
+  "ballot-recount-outline": 986170,
+  "bandage": 986543,
+  "bandcamp": 984693,
+  "bank": 983152,
+  "bank-minus": 986544,
+  "bank-outline": 986752,
+  "bank-plus": 986545,
+  "bank-remove": 986546,
+  "bank-transfer": 985639,
+  "bank-transfer-in": 985640,
+  "bank-transfer-out": 985641,
+  "barcode": 983153,
+  "barcode-off": 987702,
+  "barcode-scan": 983154,
+  "barley": 983155,
+  "barley-off": 985949,
+  "barn": 985950,
+  "barrel": 983156,
+  "baseball": 985170,
+  "baseball-bat": 985171,
+  "bash": 987523,
+  "basket": 983158,
+  "basket-fill": 983159,
+  "basket-outline": 987521,
+  "basket-unfill": 983160,
+  "basketball": 985094,
+  "basketball-hoop": 986171,
+  "basketball-hoop-outline": 986172,
+  "bat": 985951,
+  "battery": 983161,
+  "battery-10": 983162,
+  "battery-10-bluetooth": 985406,
+  "battery-20": 983163,
+  "battery-20-bluetooth": 985407,
+  "battery-30": 983164,
+  "battery-30-bluetooth": 985408,
+  "battery-40": 983165,
+  "battery-40-bluetooth": 985409,
+  "battery-50": 983166,
+  "battery-50-bluetooth": 985410,
+  "battery-60": 983167,
+  "battery-60-bluetooth": 985411,
+  "battery-70": 983168,
+  "battery-70-bluetooth": 985412,
+  "battery-80": 983169,
+  "battery-80-bluetooth": 985413,
+  "battery-90": 983170,
+  "battery-90-bluetooth": 985414,
+  "battery-alert": 983171,
+  "battery-alert-bluetooth": 985415,
+  "battery-alert-variant": 987340,
+  "battery-alert-variant-outline": 987341,
+  "battery-bluetooth": 985416,
+  "battery-bluetooth-variant": 985417,
+  "battery-charging": 983172,
+  "battery-charging-10": 985244,
+  "battery-charging-100": 983173,
+  "battery-charging-20": 983174,
+  "battery-charging-30": 983175,
+  "battery-charging-40": 983176,
+  "battery-charging-50": 985245,
+  "battery-charging-60": 983177,
+  "battery-charging-70": 985246,
+  "battery-charging-80": 983178,
+  "battery-charging-90": 983179,
+  "battery-charging-high": 987814,
+  "battery-charging-low": 987812,
+  "battery-charging-medium": 987813,
+  "battery-charging-outline": 985247,
+  "battery-charging-wireless": 985095,
+  "battery-charging-wireless-10": 985096,
+  "battery-charging-wireless-20": 985097,
+  "battery-charging-wireless-30": 985098,
+  "battery-charging-wireless-40": 985099,
+  "battery-charging-wireless-50": 985100,
+  "battery-charging-wireless-60": 985101,
+  "battery-charging-wireless-70": 985102,
+  "battery-charging-wireless-80": 985103,
+  "battery-charging-wireless-90": 985104,
+  "battery-charging-wireless-alert": 985105,
+  "battery-charging-wireless-outline": 985106,
+  "battery-heart": 987663,
+  "battery-heart-outline": 987664,
+  "battery-heart-variant": 987665,
+  "battery-high": 987811,
+  "battery-low": 987809,
+  "battery-medium": 987810,
+  "battery-minus": 983180,
+  "battery-negative": 983181,
+  "battery-off": 987741,
+  "battery-off-outline": 987742,
+  "battery-outline": 983182,
+  "battery-plus": 983183,
+  "battery-positive": 983184,
+  "battery-unknown": 983185,
+  "battery-unknown-bluetooth": 985418,
+  "battlenet": 985952,
+  "beach": 983186,
+  "beaker": 986346,
+  "beaker-alert": 987689,
+  "beaker-alert-outline": 987690,
+  "beaker-check": 987691,
+  "beaker-check-outline": 987692,
+  "beaker-minus": 987693,
+  "beaker-minus-outline": 987694,
+  "beaker-outline": 984720,
+  "beaker-plus": 987695,
+  "beaker-plus-outline": 987696,
+  "beaker-question": 987697,
+  "beaker-question-outline": 987698,
+  "beaker-remove": 987699,
+  "beaker-remove-outline": 987700,
+  "bed": 983779,
+  "bed-double": 987092,
+  "bed-double-outline": 987091,
+  "bed-empty": 985248,
+  "bed-king": 987090,
+  "bed-king-outline": 987089,
+  "bed-outline": 983193,
+  "bed-queen": 987088,
+  "bed-queen-outline": 987099,
+  "bed-single": 987245,
+  "bed-single-outline": 987246,
+  "bee": 987041,
+  "bee-flower": 987042,
+  "beehive-off-outline": 988141,
+  "beehive-outline": 987342,
+  "beer": 983192,
+  "beer-outline": 987916,
+  "bell": 983194,
+  "bell-alert": 986457,
+  "bell-alert-outline": 986753,
+  "bell-cancel": 988135,
+  "bell-cancel-outline": 988136,
+  "bell-check": 987621,
+  "bell-check-outline": 987622,
+  "bell-circle": 986458,
+  "bell-circle-outline": 986459,
+  "bell-minus": 988137,
+  "bell-minus-outline": 988138,
+  "bell-off": 983195,
+  "bell-off-outline": 985745,
+  "bell-outline": 983196,
+  "bell-plus": 983197,
+  "bell-plus-outline": 985746,
+  "bell-remove": 988139,
+  "bell-remove-outline": 988140,
+  "bell-ring": 983198,
+  "bell-ring-outline": 983199,
+  "bell-sleep": 983200,
+  "bell-sleep-outline": 985747,
+  "beta": 983201,
+  "betamax": 985547,
+  "biathlon": 986644,
+  "bicycle": 987292,
+  "bicycle-basket": 987701,
+  "bike": 983203,
+  "bike-fast": 987423,
+  "billboard": 987152,
+  "billiards": 985953,
+  "billiards-rack": 985954,
+  "binoculars": 983205,
+  "bio": 983206,
+  "biohazard": 983207,
+  "bitbucket": 983208,
+  "bitcoin": 985107,
+  "black-mesa": 983209,
+  "blender": 986347,
+  "blender-software": 983211,
+  "blinds": 983212,
+  "blinds-open": 987153,
+  "block-helper": 983213,
+  "blogger": 983214,
+  "blood-bag": 986348,
+  "bluetooth": 983215,
+  "bluetooth-audio": 983216,
+  "bluetooth-connect": 983217,
+  "bluetooth-off": 983218,
+  "bluetooth-settings": 983219,
+  "bluetooth-transfer": 983220,
+  "blur": 983221,
+  "blur-linear": 983222,
+  "blur-off": 983223,
+  "blur-radial": 983224,
+  "bolnisi-cross": 986349,
+  "bolt": 986547,
+  "bomb": 984721,
+  "bomb-off": 984773,
+  "bone": 983225,
+  "book": 983226,
+  "book-account": 988077,
+  "book-account-outline": 988078,
+  "book-alphabet": 984605,
+  "book-cross": 983202,
+  "book-information-variant": 987247,
+  "book-lock": 984986,
+  "book-lock-open": 984987,
+  "book-minus": 984537,
+  "book-minus-multiple": 985748,
+  "book-minus-multiple-outline": 985355,
+  "book-multiple": 983227,
+  "book-multiple-outline": 984118,
+  "book-music": 983143,
+  "book-open": 983229,
+  "book-open-outline": 985955,
+  "book-open-page-variant": 984538,
+  "book-open-variant": 983230,
+  "book-outline": 985956,
+  "book-play": 986754,
+  "book-play-outline": 986755,
+  "book-plus": 984539,
+  "book-plus-multiple": 985749,
+  "book-plus-multiple-outline": 985822,
+  "book-remove": 985751,
+  "book-remove-multiple": 985750,
+  "book-remove-multiple-outline": 984266,
+  "book-search": 986756,
+  "book-search-outline": 986757,
+  "book-variant": 983231,
+  "book-variant-multiple": 983228,
+  "bookmark": 983232,
+  "bookmark-check": 983233,
+  "bookmark-check-outline": 988027,
+  "bookmark-minus": 985548,
+  "bookmark-minus-outline": 985549,
+  "bookmark-multiple": 986645,
+  "bookmark-multiple-outline": 986646,
+  "bookmark-music": 983234,
+  "bookmark-music-outline": 988025,
+  "bookmark-off": 985550,
+  "bookmark-off-outline": 985551,
+  "bookmark-outline": 983235,
+  "bookmark-plus": 983237,
+  "bookmark-plus-outline": 983236,
+  "bookmark-remove": 983238,
+  "bookmark-remove-outline": 988026,
+  "bookshelf": 987743,
+  "boom-gate": 986758,
+  "boom-gate-alert": 986759,
+  "boom-gate-alert-outline": 986760,
+  "boom-gate-down": 986761,
+  "boom-gate-down-outline": 986762,
+  "boom-gate-outline": 986763,
+  "boom-gate-up": 986764,
+  "boom-gate-up-outline": 986765,
+  "boombox": 984540,
+  "boomerang": 987343,
+  "bootstrap": 984774,
+  "border-all": 983239,
+  "border-all-variant": 985249,
+  "border-bottom": 983240,
+  "border-bottom-variant": 985250,
+  "border-color": 983241,
+  "border-horizontal": 983242,
+  "border-inside": 983243,
+  "border-left": 983244,
+  "border-left-variant": 985251,
+  "border-none": 983245,
+  "border-none-variant": 985252,
+  "border-outside": 983246,
+  "border-right": 983247,
+  "border-right-variant": 985253,
+  "border-style": 983248,
+  "border-top": 983249,
+  "border-top-variant": 985254,
+  "border-vertical": 983250,
+  "bottle-soda": 987248,
+  "bottle-soda-classic": 987249,
+  "bottle-soda-classic-outline": 988003,
+  "bottle-soda-outline": 987250,
+  "bottle-tonic": 987438,
+  "bottle-tonic-outline": 987439,
+  "bottle-tonic-plus": 987440,
+  "bottle-tonic-plus-outline": 987441,
+  "bottle-tonic-skull": 987442,
+  "bottle-tonic-skull-outline": 987443,
+  "bottle-wine": 985172,
+  "bottle-wine-outline": 987920,
+  "bow-tie": 984696,
+  "bowl": 983694,
+  "bowl-mix": 984599,
+  "bowl-mix-outline": 983780,
+  "bowl-outline": 983721,
+  "bowling": 983251,
+  "box": 983252,
+  "box-cutter": 983253,
+  "box-cutter-off": 985930,
+  "box-shadow": 984631,
+  "boxing-glove": 985957,
+  "braille": 985552,
+  "brain": 985553,
+  "bread-slice": 986350,
+  "bread-slice-outline": 986351,
+  "bridge": 984600,
+  "briefcase": 983254,
+  "briefcase-account": 986352,
+  "briefcase-account-outline": 986353,
+  "briefcase-check": 983255,
+  "briefcase-check-outline": 987934,
+  "briefcase-clock": 987344,
+  "briefcase-clock-outline": 987345,
+  "briefcase-download": 983256,
+  "briefcase-download-outline": 986173,
+  "briefcase-edit": 985752,
+  "briefcase-edit-outline": 986174,
+  "briefcase-minus": 985642,
+  "briefcase-minus-outline": 986175,
+  "briefcase-outline": 985108,
+  "briefcase-plus": 985643,
+  "briefcase-plus-outline": 986176,
+  "briefcase-remove": 985644,
+  "briefcase-remove-outline": 986177,
+  "briefcase-search": 985645,
+  "briefcase-search-outline": 986178,
+  "briefcase-upload": 983257,
+  "briefcase-upload-outline": 986179,
+  "briefcase-variant": 988308,
+  "briefcase-variant-outline": 988309,
+  "brightness-1": 983258,
+  "brightness-2": 983259,
+  "brightness-3": 983260,
+  "brightness-4": 983261,
+  "brightness-5": 983262,
+  "brightness-6": 983263,
+  "brightness-7": 983264,
+  "brightness-auto": 983265,
+  "brightness-percent": 986354,
+  "broom": 983266,
+  "brush": 983267,
+  "bucket": 988181,
+  "bucket-outline": 988182,
+  "buddhism": 985419,
+  "buffer": 984601,
+  "buffet": 984440,
+  "bug": 983268,
+  "bug-check": 985646,
+  "bug-check-outline": 985647,
+  "bug-outline": 985648,
+  "bugle": 986548,
+  "bulldozer": 985890,
+  "bullet": 986355,
+  "bulletin-board": 983269,
+  "bullhorn": 983270,
+  "bullhorn-outline": 985891,
+  "bullseye": 984541,
+  "bullseye-arrow": 985289,
+  "bulma": 987879,
+  "bunk-bed": 987906,
+  "bunk-bed-outline": 983191,
+  "bus": 983271,
+  "bus-alert": 985753,
+  "bus-articulated-end": 984988,
+  "bus-articulated-front": 984989,
+  "bus-clock": 985290,
+  "bus-double-decker": 984990,
+  "bus-marker": 987666,
+  "bus-multiple": 986943,
+  "bus-school": 984991,
+  "bus-side": 984992,
+  "bus-stop": 987154,
+  "bus-stop-covered": 987155,
+  "bus-stop-uncovered": 987156,
+  "cable-data": 988052,
+  "cached": 983272,
+  "cactus": 986549,
+  "cake": 983273,
+  "cake-layered": 983274,
+  "cake-variant": 983275,
+  "calculator": 983276,
+  "calculator-variant": 985754,
+  "calendar": 983277,
+  "calendar-account": 986839,
+  "calendar-account-outline": 986840,
+  "calendar-alert": 985649,
+  "calendar-arrow-left": 987444,
+  "calendar-arrow-right": 987445,
+  "calendar-blank": 983278,
+  "calendar-blank-multiple": 987251,
+  "calendar-blank-outline": 985958,
+  "calendar-check": 983279,
+  "calendar-check-outline": 986180,
+  "calendar-clock": 983280,
+  "calendar-edit": 985255,
+  "calendar-export": 985892,
+  "calendar-heart": 985554,
+  "calendar-import": 985893,
+  "calendar-minus": 986460,
+  "calendar-month": 986647,
+  "calendar-month-outline": 986648,
+  "calendar-multiple": 983281,
+  "calendar-multiple-check": 983282,
+  "calendar-multiselect": 985650,
+  "calendar-outline": 985959,
+  "calendar-plus": 983283,
+  "calendar-question": 984722,
+  "calendar-range": 984697,
+  "calendar-range-outline": 985960,
+  "calendar-refresh": 983521,
+  "calendar-refresh-outline": 983555,
+  "calendar-remove": 983284,
+  "calendar-remove-outline": 986181,
+  "calendar-search": 985420,
+  "calendar-star": 985555,
+  "calendar-sync": 986766,
+  "calendar-sync-outline": 986767,
+  "calendar-text": 983285,
+  "calendar-text-outline": 986182,
+  "calendar-today": 983286,
+  "calendar-week": 985651,
+  "calendar-week-begin": 985652,
+  "calendar-weekend": 986841,
+  "calendar-weekend-outline": 986842,
+  "call-made": 983287,
+  "call-merge": 983288,
+  "call-missed": 983289,
+  "call-received": 983290,
+  "call-split": 983291,
+  "camcorder": 983292,
+  "camcorder-off": 983295,
+  "camera": 983296,
+  "camera-account": 985291,
+  "camera-burst": 984723,
+  "camera-control": 985961,
+  "camera-enhance": 983297,
+  "camera-enhance-outline": 985962,
+  "camera-front": 983298,
+  "camera-front-variant": 983299,
+  "camera-gopro": 984993,
+  "camera-image": 985292,
+  "camera-iris": 983300,
+  "camera-metering-center": 984994,
+  "camera-metering-matrix": 984995,
+  "camera-metering-partial": 984996,
+  "camera-metering-spot": 984997,
+  "camera-off": 984543,
+  "camera-outline": 986461,
+  "camera-party-mode": 983301,
+  "camera-plus": 986843,
+  "camera-plus-outline": 986844,
+  "camera-rear": 983302,
+  "camera-rear-variant": 983303,
+  "camera-retake": 986649,
+  "camera-retake-outline": 986650,
+  "camera-switch": 983304,
+  "camera-switch-outline": 985162,
+  "camera-timer": 983305,
+  "camera-wireless": 986550,
+  "camera-wireless-outline": 986551,
+  "campfire": 986845,
+  "cancel": 984890,
+  "candle": 984546,
+  "candycane": 983306,
+  "cannabis": 984998,
+  "caps-lock": 985755,
+  "car": 983307,
+  "car-2-plus": 987157,
+  "car-3-plus": 987158,
+  "car-arrow-left": 988082,
+  "car-arrow-right": 988083,
+  "car-back": 986651,
+  "car-battery": 983308,
+  "car-brake-abs": 986183,
+  "car-brake-alert": 986184,
+  "car-brake-hold": 986462,
+  "car-brake-parking": 986463,
+  "car-brake-retarder": 987159,
+  "car-child-seat": 987043,
+  "car-clutch": 987160,
+  "car-cog": 988108,
+  "car-connected": 983309,
+  "car-convertible": 984999,
+  "car-coolant-level": 987161,
+  "car-cruise-control": 986464,
+  "car-defrost-front": 986465,
+  "car-defrost-rear": 986466,
+  "car-door": 985963,
+  "car-door-lock": 987293,
+  "car-electric": 985964,
+  "car-esp": 986185,
+  "car-estate": 985000,
+  "car-hatchback": 985001,
+  "car-info": 987582,
+  "car-key": 985965,
+  "car-light-dimmed": 986186,
+  "car-light-fog": 986187,
+  "car-light-high": 986188,
+  "car-limousine": 985293,
+  "car-multiple": 985966,
+  "car-off": 986652,
+  "car-parking-lights": 986467,
+  "car-pickup": 985002,
+  "car-seat": 987044,
+  "car-seat-cooler": 987045,
+  "car-seat-heater": 987046,
+  "car-settings": 988109,
+  "car-shift-pattern": 986944,
+  "car-side": 985003,
+  "car-sports": 985004,
+  "car-tire-alert": 986189,
+  "car-traction-control": 986468,
+  "car-turbocharger": 987162,
+  "car-wash": 983310,
+  "car-windshield": 987163,
+  "car-windshield-outline": 987164,
+  "carabiner": 988352,
+  "caravan": 985005,
+  "card": 985967,
+  "card-account-details": 984530,
+  "card-account-details-outline": 986539,
+  "card-account-details-star": 983715,
+  "card-account-details-star-outline": 984795,
+  "card-account-mail": 983438,
+  "card-account-mail-outline": 986776,
+  "card-account-phone": 986777,
+  "card-account-phone-outline": 986778,
+  "card-bulleted": 985968,
+  "card-bulleted-off": 985969,
+  "card-bulleted-off-outline": 985970,
+  "card-bulleted-outline": 985971,
+  "card-bulleted-settings": 985972,
+  "card-bulleted-settings-outline": 985973,
+  "card-outline": 985974,
+  "card-plus": 987647,
+  "card-plus-outline": 987648,
+  "card-search": 987252,
+  "card-search-outline": 987253,
+  "card-text": 985975,
+  "card-text-outline": 985976,
+  "cards": 984632,
+  "cards-club": 985294,
+  "cards-diamond": 985295,
+  "cards-diamond-outline": 987165,
+  "cards-heart": 985296,
+  "cards-outline": 984633,
+  "cards-playing-outline": 984634,
+  "cards-spade": 985297,
+  "cards-variant": 984775,
+  "carrot": 983311,
+  "cart": 983312,
+  "cart-arrow-down": 986470,
+  "cart-arrow-right": 986190,
+  "cart-arrow-up": 986471,
+  "cart-minus": 986472,
+  "cart-off": 984683,
+  "cart-outline": 983313,
+  "cart-plus": 983314,
+  "cart-remove": 986473,
+  "case-sensitive-alt": 983315,
+  "cash": 983316,
+  "cash-100": 983317,
+  "cash-marker": 986552,
+  "cash-minus": 987744,
+  "cash-multiple": 983318,
+  "cash-plus": 987745,
+  "cash-refund": 985756,
+  "cash-register": 986356,
+  "cash-remove": 987746,
+  "cash-usd": 987510,
+  "cash-usd-outline": 983319,
+  "cassette": 985556,
+  "cast": 983320,
+  "cast-audio": 987166,
+  "cast-connected": 983321,
+  "cast-education": 986653,
+  "cast-off": 984970,
+  "castle": 983322,
+  "cat": 983323,
+  "cctv": 985006,
+  "ceiling-light": 984937,
+  "cellphone": 983324,
+  "cellphone-android": 983325,
+  "cellphone-arrow-down": 985557,
+  "cellphone-basic": 983326,
+  "cellphone-charging": 988055,
+  "cellphone-cog": 985425,
+  "cellphone-dock": 983327,
+  "cellphone-erase": 985421,
+  "cellphone-information": 986945,
+  "cellphone-iphone": 983328,
+  "cellphone-key": 985422,
+  "cellphone-link": 983329,
+  "cellphone-link-off": 983330,
+  "cellphone-lock": 985423,
+  "cellphone-message": 985299,
+  "cellphone-message-off": 987346,
+  "cellphone-nfc": 986768,
+  "cellphone-nfc-off": 987864,
+  "cellphone-off": 985424,
+  "cellphone-play": 987167,
+  "cellphone-screenshot": 985653,
+  "cellphone-settings": 983331,
+  "cellphone-sound": 985426,
+  "cellphone-text": 985298,
+  "cellphone-wireless": 985109,
+  "celtic-cross": 986357,
+  "centos": 987418,
+  "certificate": 983332,
+  "certificate-outline": 987528,
+  "chair-rolling": 986952,
+  "chair-school": 983333,
+  "charity": 986191,
+  "chart-arc": 983334,
+  "chart-areaspline": 983335,
+  "chart-areaspline-variant": 986769,
+  "chart-bar": 983336,
+  "chart-bar-stacked": 984938,
+  "chart-bell-curve": 986192,
+  "chart-bell-curve-cumulative": 987047,
+  "chart-bubble": 984547,
+  "chart-donut": 985007,
+  "chart-donut-variant": 985008,
+  "chart-gantt": 984684,
+  "chart-histogram": 983337,
+  "chart-line": 983338,
+  "chart-line-stacked": 984939,
+  "chart-line-variant": 985009,
+  "chart-multiline": 985300,
+  "chart-multiple": 987667,
+  "chart-pie": 983339,
+  "chart-ppf": 988032,
+  "chart-sankey": 987615,
+  "chart-sankey-variant": 987616,
+  "chart-scatter-plot": 986770,
+  "chart-scatter-plot-hexbin": 984685,
+  "chart-timeline": 984686,
+  "chart-timeline-variant": 986771,
+  "chart-tree": 986772,
+  "chat": 985977,
+  "chat-alert": 985978,
+  "chat-alert-outline": 987849,
+  "chat-minus": 988176,
+  "chat-minus-outline": 988179,
+  "chat-outline": 986846,
+  "chat-plus": 988175,
+  "chat-plus-outline": 988178,
+  "chat-processing": 985979,
+  "chat-processing-outline": 987850,
+  "chat-remove": 988177,
+  "chat-remove-outline": 988180,
+  "chat-sleep": 987857,
+  "chat-sleep-outline": 987858,
+  "check": 983340,
+  "check-all": 983341,
+  "check-bold": 986654,
+  "check-box-multiple-outline": 986193,
+  "check-box-outline": 986194,
+  "check-circle": 984544,
+  "check-circle-outline": 984545,
+  "check-decagram": 984977,
+  "check-network": 986195,
+  "check-network-outline": 986196,
+  "check-outline": 985173,
+  "check-underline": 986655,
+  "check-underline-circle": 986656,
+  "check-underline-circle-outline": 986657,
+  "checkbook": 985757,
+  "checkbox-blank": 983342,
+  "checkbox-blank-circle": 983343,
+  "checkbox-blank-circle-outline": 983344,
+  "checkbox-blank-off": 987884,
+  "checkbox-blank-off-outline": 987885,
+  "checkbox-blank-outline": 983345,
+  "checkbox-intermediate": 985174,
+  "checkbox-marked": 983346,
+  "checkbox-marked-circle": 983347,
+  "checkbox-marked-circle-outline": 983348,
+  "checkbox-marked-outline": 983349,
+  "checkbox-multiple-blank": 983350,
+  "checkbox-multiple-blank-circle": 984635,
+  "checkbox-multiple-blank-circle-outline": 984636,
+  "checkbox-multiple-blank-outline": 983351,
+  "checkbox-multiple-marked": 983352,
+  "checkbox-multiple-marked-circle": 984637,
+  "checkbox-multiple-marked-circle-outline": 984638,
+  "checkbox-multiple-marked-outline": 983353,
+  "checkerboard": 983354,
+  "checkerboard-minus": 987650,
+  "checkerboard-plus": 987649,
+  "checkerboard-remove": 987651,
+  "cheese": 987833,
+  "cheese-off": 988142,
+  "chef-hat": 985980,
+  "chemical-weapon": 983355,
+  "chess-bishop": 985180,
+  "chess-king": 985175,
+  "chess-knight": 985176,
+  "chess-pawn": 985177,
+  "chess-queen": 985178,
+  "chess-rook": 985179,
+  "chevron-double-down": 983356,
+  "chevron-double-left": 983357,
+  "chevron-double-right": 983358,
+  "chevron-double-up": 983359,
+  "chevron-down": 983360,
+  "chevron-down-box": 985558,
+  "chevron-down-box-outline": 985559,
+  "chevron-down-circle": 985894,
+  "chevron-down-circle-outline": 985895,
+  "chevron-left": 983361,
+  "chevron-left-box": 985560,
+  "chevron-left-box-outline": 985561,
+  "chevron-left-circle": 985896,
+  "chevron-left-circle-outline": 985897,
+  "chevron-right": 983362,
+  "chevron-right-box": 985562,
+  "chevron-right-box-outline": 985563,
+  "chevron-right-circle": 985898,
+  "chevron-right-circle-outline": 985899,
+  "chevron-triple-down": 986553,
+  "chevron-triple-left": 986554,
+  "chevron-triple-right": 986555,
+  "chevron-triple-up": 986556,
+  "chevron-up": 983363,
+  "chevron-up-box": 985564,
+  "chevron-up-box-outline": 985565,
+  "chevron-up-circle": 985900,
+  "chevron-up-circle-outline": 985901,
+  "chili-hot": 985010,
+  "chili-medium": 985011,
+  "chili-mild": 985012,
+  "chili-off": 988263,
+  "chip": 984602,
+  "christianity": 985427,
+  "christianity-outline": 986358,
+  "church": 983364,
+  "cigar": 987529,
+  "cigar-off": 988187,
+  "circle": 984933,
+  "circle-double": 986773,
+  "circle-edit-outline": 985301,
+  "circle-expand": 986774,
+  "circle-half": 988053,
+  "circle-half-full": 988054,
+  "circle-medium": 985566,
+  "circle-multiple": 985912,
+  "circle-multiple-outline": 984725,
+  "circle-off-outline": 987347,
+  "circle-outline": 984934,
+  "circle-slice-1": 985758,
+  "circle-slice-2": 985759,
+  "circle-slice-3": 985760,
+  "circle-slice-4": 985761,
+  "circle-slice-5": 985762,
+  "circle-slice-6": 985763,
+  "circle-slice-7": 985764,
+  "circle-slice-8": 985765,
+  "circle-small": 985567,
+  "circular-saw": 986658,
+  "city": 983366,
+  "city-variant": 985654,
+  "city-variant-outline": 985655,
+  "clipboard": 983367,
+  "clipboard-account": 983368,
+  "clipboard-account-outline": 986197,
+  "clipboard-alert": 983369,
+  "clipboard-alert-outline": 986359,
+  "clipboard-arrow-down": 983370,
+  "clipboard-arrow-down-outline": 986198,
+  "clipboard-arrow-left": 983371,
+  "clipboard-arrow-left-outline": 986360,
+  "clipboard-arrow-right": 986361,
+  "clipboard-arrow-right-outline": 986362,
+  "clipboard-arrow-up": 986199,
+  "clipboard-arrow-up-outline": 986200,
+  "clipboard-check": 983374,
+  "clipboard-check-multiple": 987747,
+  "clipboard-check-multiple-outline": 987748,
+  "clipboard-check-outline": 985256,
+  "clipboard-file": 987749,
+  "clipboard-file-outline": 987750,
+  "clipboard-flow": 984776,
+  "clipboard-flow-outline": 987415,
+  "clipboard-list": 987348,
+  "clipboard-list-outline": 987349,
+  "clipboard-multiple": 987751,
+  "clipboard-multiple-outline": 987752,
+  "clipboard-outline": 983372,
+  "clipboard-play": 986201,
+  "clipboard-play-multiple": 987753,
+  "clipboard-play-multiple-outline": 987754,
+  "clipboard-play-outline": 986202,
+  "clipboard-plus": 984913,
+  "clipboard-plus-outline": 987935,
+  "clipboard-pulse": 985181,
+  "clipboard-pulse-outline": 985182,
+  "clipboard-text": 983373,
+  "clipboard-text-multiple": 987755,
+  "clipboard-text-multiple-outline": 987756,
+  "clipboard-text-outline": 985656,
+  "clipboard-text-play": 986203,
+  "clipboard-text-play-outline": 986204,
+  "clippy": 983375,
+  "clock": 985428,
+  "clock-alert": 985429,
+  "clock-alert-outline": 984526,
+  "clock-check": 987048,
+  "clock-check-outline": 987049,
+  "clock-digital": 986775,
+  "clock-end": 983377,
+  "clock-fast": 983378,
+  "clock-in": 983379,
+  "clock-out": 983380,
+  "clock-outline": 983376,
+  "clock-start": 983381,
+  "clock-time-eight": 988230,
+  "clock-time-eight-outline": 988242,
+  "clock-time-eleven": 988233,
+  "clock-time-eleven-outline": 988245,
+  "clock-time-five": 988227,
+  "clock-time-five-outline": 988239,
+  "clock-time-four": 988226,
+  "clock-time-four-outline": 988238,
+  "clock-time-nine": 988231,
+  "clock-time-nine-outline": 988243,
+  "clock-time-one": 988223,
+  "clock-time-one-outline": 988235,
+  "clock-time-seven": 988229,
+  "clock-time-seven-outline": 988241,
+  "clock-time-six": 988228,
+  "clock-time-six-outline": 988240,
+  "clock-time-ten": 988232,
+  "clock-time-ten-outline": 988244,
+  "clock-time-three": 988225,
+  "clock-time-three-outline": 988237,
+  "clock-time-twelve": 988234,
+  "clock-time-twelve-outline": 988246,
+  "clock-time-two": 988224,
+  "clock-time-two-outline": 988236,
+  "close": 983382,
+  "close-box": 983383,
+  "close-box-multiple": 986205,
+  "close-box-multiple-outline": 986206,
+  "close-box-outline": 983384,
+  "close-circle": 983385,
+  "close-circle-multiple": 984618,
+  "close-circle-multiple-outline": 985219,
+  "close-circle-outline": 983386,
+  "close-network": 983387,
+  "close-network-outline": 986207,
+  "close-octagon": 983388,
+  "close-octagon-outline": 983389,
+  "close-outline": 984777,
+  "close-thick": 988056,
+  "closed-caption": 983390,
+  "closed-caption-outline": 986557,
+  "cloud": 983391,
+  "cloud-alert": 985568,
+  "cloud-braces": 985013,
+  "cloud-check": 983392,
+  "cloud-check-outline": 987852,
+  "cloud-circle": 983393,
+  "cloud-download": 983394,
+  "cloud-download-outline": 985981,
+  "cloud-lock": 987633,
+  "cloud-lock-outline": 987634,
+  "cloud-off-outline": 983396,
+  "cloud-outline": 983395,
+  "cloud-print": 983397,
+  "cloud-print-outline": 983398,
+  "cloud-question": 985657,
+  "cloud-refresh": 984362,
+  "cloud-search": 985430,
+  "cloud-search-outline": 985431,
+  "cloud-sync": 984639,
+  "cloud-sync-outline": 987862,
+  "cloud-tags": 985014,
+  "cloud-upload": 983399,
+  "cloud-upload-outline": 985982,
+  "clover": 985110,
+  "coach-lamp": 987168,
+  "coat-rack": 987294,
+  "code-array": 983400,
+  "code-braces": 983401,
+  "code-braces-box": 987350,
+  "code-brackets": 983402,
+  "code-equal": 983403,
+  "code-greater-than": 983404,
+  "code-greater-than-or-equal": 983405,
+  "code-json": 984614,
+  "code-less-than": 983406,
+  "code-less-than-or-equal": 983407,
+  "code-not-equal": 983408,
+  "code-not-equal-variant": 983409,
+  "code-parentheses": 983410,
+  "code-parentheses-box": 987351,
+  "code-string": 983411,
+  "code-tags": 983412,
+  "code-tags-check": 984724,
+  "codepen": 983413,
+  "coffee": 983414,
+  "coffee-maker": 987295,
+  "coffee-off": 987050,
+  "coffee-off-outline": 987051,
+  "coffee-outline": 984778,
+  "coffee-to-go": 983415,
+  "coffee-to-go-outline": 987918,
+  "coffin": 985983,
+  "cog": 984211,
+  "cog-box": 984212,
+  "cog-clockwise": 987613,
+  "cog-counterclockwise": 987614,
+  "cog-off": 988110,
+  "cog-off-outline": 988111,
+  "cog-outline": 985275,
+  "cog-refresh": 988254,
+  "cog-refresh-outline": 988255,
+  "cog-sync": 988256,
+  "cog-sync-outline": 988257,
+  "cog-transfer": 987227,
+  "cog-transfer-outline": 987228,
+  "cogs": 985302,
+  "collage": 984640,
+  "collapse-all": 985766,
+  "collapse-all-outline": 985767,
+  "color-helper": 983417,
+  "comma": 986659,
+  "comma-box": 986667,
+  "comma-box-outline": 986660,
+  "comma-circle": 986661,
+  "comma-circle-outline": 986662,
+  "comment": 983418,
+  "comment-account": 983419,
+  "comment-account-outline": 983420,
+  "comment-alert": 983421,
+  "comment-alert-outline": 983422,
+  "comment-arrow-left": 985569,
+  "comment-arrow-left-outline": 985570,
+  "comment-arrow-right": 985571,
+  "comment-arrow-right-outline": 985572,
+  "comment-check": 983423,
+  "comment-check-outline": 983424,
+  "comment-edit": 987583,
+  "comment-edit-outline": 987844,
+  "comment-eye": 985658,
+  "comment-eye-outline": 985659,
+  "comment-multiple": 985183,
+  "comment-multiple-outline": 983425,
+  "comment-outline": 983426,
+  "comment-plus": 985573,
+  "comment-plus-outline": 983427,
+  "comment-processing": 983428,
+  "comment-processing-outline": 983429,
+  "comment-question": 985111,
+  "comment-question-outline": 983430,
+  "comment-quote": 987169,
+  "comment-quote-outline": 987170,
+  "comment-remove": 984542,
+  "comment-remove-outline": 983431,
+  "comment-search": 985660,
+  "comment-search-outline": 985661,
+  "comment-text": 983432,
+  "comment-text-multiple": 985184,
+  "comment-text-multiple-outline": 985185,
+  "comment-text-outline": 983433,
+  "compare": 983434,
+  "compare-horizontal": 988306,
+  "compare-vertical": 988307,
+  "compass": 983435,
+  "compass-off": 985984,
+  "compass-off-outline": 985985,
+  "compass-outline": 983436,
+  "compass-rose": 988034,
+  "concourse-ci": 987296,
+  "console": 983437,
+  "console-line": 985015,
+  "console-network": 985257,
+  "console-network-outline": 986208,
+  "consolidate": 987352,
+  "contactless-payment": 986474,
+  "contactless-payment-circle": 983841,
+  "contactless-payment-circle-outline": 984072,
+  "contacts": 984779,
+  "contacts-outline": 984504,
+  "contain": 985662,
+  "contain-end": 985663,
+  "contain-start": 985664,
+  "content-copy": 983439,
+  "content-cut": 983440,
+  "content-duplicate": 983441,
+  "content-paste": 983442,
+  "content-save": 983443,
+  "content-save-alert": 986946,
+  "content-save-alert-outline": 986947,
+  "content-save-all": 983444,
+  "content-save-all-outline": 986948,
+  "content-save-cog": 988251,
+  "content-save-cog-outline": 988252,
+  "content-save-edit": 986363,
+  "content-save-edit-outline": 986364,
+  "content-save-move": 986663,
+  "content-save-move-outline": 986664,
+  "content-save-outline": 985112,
+  "content-save-settings": 984603,
+  "content-save-settings-outline": 985902,
+  "contrast": 983445,
+  "contrast-box": 983446,
+  "contrast-circle": 983447,
+  "controller-classic": 985986,
+  "controller-classic-outline": 985987,
+  "cookie": 983448,
+  "coolant-temperature": 984008,
+  "copyright": 984550,
+  "cordova": 985432,
+  "corn": 985016,
+  "corn-off": 988143,
+  "cosine-wave": 988281,
+  "counter": 983449,
+  "cow": 983450,
+  "cpu-32-bit": 986847,
+  "cpu-64-bit": 986848,
+  "crane": 985186,
+  "creation": 984692,
+  "creative-commons": 986475,
+  "credit-card": 987119,
+  "credit-card-check": 988112,
+  "credit-card-check-outline": 988113,
+  "credit-card-clock": 986849,
+  "credit-card-clock-outline": 986850,
+  "credit-card-marker": 984744,
+  "credit-card-marker-outline": 986558,
+  "credit-card-minus": 987052,
+  "credit-card-minus-outline": 987053,
+  "credit-card-multiple": 987120,
+  "credit-card-multiple-outline": 983452,
+  "credit-card-off": 987121,
+  "credit-card-off-outline": 984548,
+  "credit-card-outline": 983451,
+  "credit-card-plus": 987122,
+  "credit-card-plus-outline": 984694,
+  "credit-card-refund": 987123,
+  "credit-card-refund-outline": 985768,
+  "credit-card-remove": 987054,
+  "credit-card-remove-outline": 987055,
+  "credit-card-scan": 987124,
+  "credit-card-scan-outline": 983453,
+  "credit-card-settings": 987125,
+  "credit-card-settings-outline": 985303,
+  "credit-card-wireless": 985090,
+  "credit-card-wireless-off": 984442,
+  "credit-card-wireless-off-outline": 984443,
+  "credit-card-wireless-outline": 986476,
+  "cricket": 986477,
+  "crop": 983454,
+  "crop-free": 983455,
+  "crop-landscape": 983456,
+  "crop-portrait": 983457,
+  "crop-rotate": 984726,
+  "crop-square": 983458,
+  "crosshairs": 983459,
+  "crosshairs-gps": 983460,
+  "crosshairs-off": 986949,
+  "crosshairs-question": 987446,
+  "crown": 983461,
+  "crown-outline": 987600,
+  "cryengine": 985433,
+  "crystal-ball": 985903,
+  "cube": 983462,
+  "cube-off": 988188,
+  "cube-off-outline": 988189,
+  "cube-outline": 983463,
+  "cube-scan": 985988,
+  "cube-send": 983464,
+  "cube-unfolded": 983465,
+  "cup": 983466,
+  "cup-off": 984549,
+  "cup-off-outline": 988029,
+  "cup-outline": 987919,
+  "cup-water": 983467,
+  "cupboard": 986950,
+  "cupboard-outline": 986951,
+  "cupcake": 985434,
+  "curling": 985187,
+  "currency-bdt": 985188,
+  "currency-brl": 985989,
+  "currency-btc": 983468,
+  "currency-cny": 985018,
+  "currency-eth": 985019,
+  "currency-eur": 983469,
+  "currency-eur-off": 987925,
+  "currency-gbp": 983470,
+  "currency-ils": 986209,
+  "currency-inr": 983471,
+  "currency-jpy": 985020,
+  "currency-krw": 985021,
+  "currency-kzt": 985189,
+  "currency-ngn": 983472,
+  "currency-php": 985574,
+  "currency-rial": 986780,
+  "currency-rub": 983473,
+  "currency-sign": 985022,
+  "currency-try": 983474,
+  "currency-twd": 985023,
+  "currency-usd": 983489,
+  "currency-usd-circle": 987499,
+  "currency-usd-circle-outline": 983416,
+  "currency-usd-off": 984698,
+  "current-ac": 988288,
+  "current-dc": 985436,
+  "cursor-default": 983488,
+  "cursor-default-click": 986365,
+  "cursor-default-click-outline": 986366,
+  "cursor-default-gesture": 987431,
+  "cursor-default-gesture-outline": 987432,
+  "cursor-default-outline": 983487,
+  "cursor-move": 983486,
+  "cursor-pointer": 983485,
+  "cursor-text": 984551,
+  "database": 983484,
+  "database-check": 985769,
+  "database-edit": 985990,
+  "database-export": 985438,
+  "database-import": 985437,
+  "database-lock": 985770,
+  "database-marker": 987894,
+  "database-minus": 983483,
+  "database-plus": 983482,
+  "database-refresh": 984514,
+  "database-remove": 986368,
+  "database-search": 985190,
+  "database-settings": 986369,
+  "database-sync": 986367,
+  "death-star": 985304,
+  "death-star-variant": 985305,
+  "deathly-hallows": 985991,
+  "debian": 985306,
+  "debug-step-into": 983481,
+  "debug-step-out": 983480,
+  "debug-step-over": 983479,
+  "decagram": 984940,
+  "decagram-outline": 984941,
+  "decimal": 987297,
+  "decimal-comma": 987298,
+  "decimal-comma-decrease": 987299,
+  "decimal-comma-increase": 987300,
+  "decimal-decrease": 983478,
+  "decimal-increase": 983477,
+  "delete": 983476,
+  "delete-alert": 987301,
+  "delete-alert-outline": 987302,
+  "delete-circle": 984707,
+  "delete-circle-outline": 985992,
+  "delete-empty": 984780,
+  "delete-empty-outline": 986781,
+  "delete-forever": 984552,
+  "delete-forever-outline": 985993,
+  "delete-off": 987303,
+  "delete-off-outline": 987304,
+  "delete-outline": 985575,
+  "delete-restore": 985113,
+  "delete-sweep": 984553,
+  "delete-sweep-outline": 986210,
+  "delete-variant": 983475,
+  "delta": 983490,
+  "desk": 987705,
+  "desk-lamp": 985439,
+  "deskphone": 983491,
+  "desktop-classic": 985024,
+  "desktop-mac": 983492,
+  "desktop-mac-dashboard": 985576,
+  "desktop-tower": 983493,
+  "desktop-tower-monitor": 985771,
+  "details": 983494,
+  "dev-to": 986478,
+  "developer-board": 984727,
+  "deviantart": 983495,
+  "devices": 987056,
+  "diabetes": 987430,
+  "dialpad": 984604,
+  "diameter": 986211,
+  "diameter-outline": 986212,
+  "diameter-variant": 986213,
+  "diamond": 985994,
+  "diamond-outline": 985995,
+  "diamond-stone": 983496,
+  "dice-1": 983498,
+  "dice-1-outline": 987466,
+  "dice-2": 983499,
+  "dice-2-outline": 987467,
+  "dice-3": 983500,
+  "dice-3-outline": 987468,
+  "dice-4": 983501,
+  "dice-4-outline": 987469,
+  "dice-5": 983502,
+  "dice-5-outline": 987470,
+  "dice-6": 983503,
+  "dice-6-outline": 987471,
+  "dice-d10": 987475,
+  "dice-d10-outline": 984943,
+  "dice-d12": 987476,
+  "dice-d12-outline": 985191,
+  "dice-d20": 987477,
+  "dice-d20-outline": 984554,
+  "dice-d4": 987472,
+  "dice-d4-outline": 984555,
+  "dice-d6": 987473,
+  "dice-d6-outline": 984557,
+  "dice-d8": 987474,
+  "dice-d8-outline": 984556,
+  "dice-multiple": 984942,
+  "dice-multiple-outline": 987478,
+  "digital-ocean": 987703,
+  "dip-switch": 985025,
+  "directions": 983504,
+  "directions-fork": 984641,
+  "disc": 984558,
+  "disc-alert": 983505,
+  "disc-player": 985440,
+  "discord": 984687,
+  "dishwasher": 985772,
+  "dishwasher-alert": 987576,
+  "dishwasher-off": 987577,
+  "disqus": 983506,
+  "distribute-horizontal-center": 987593,
+  "distribute-horizontal-left": 987592,
+  "distribute-horizontal-right": 987594,
+  "distribute-vertical-bottom": 987595,
+  "distribute-vertical-center": 987596,
+  "distribute-vertical-top": 987597,
+  "diving-flippers": 986559,
+  "diving-helmet": 986560,
+  "diving-scuba": 986561,
+  "diving-scuba-flag": 986562,
+  "diving-scuba-tank": 986563,
+  "diving-scuba-tank-multiple": 986564,
+  "diving-snorkel": 986565,
+  "division": 983508,
+  "division-box": 983509,
+  "dlna": 985665,
+  "dna": 984708,
+  "dns": 983510,
+  "dns-outline": 985996,
+  "do-not-disturb": 984728,
+  "do-not-disturb-off": 984729,
+  "dock-bottom": 987305,
+  "dock-left": 987306,
+  "dock-right": 987307,
+  "dock-window": 987308,
+  "docker": 985192,
+  "doctor": 985666,
+  "dog": 985667,
+  "dog-service": 985773,
+  "dog-side": 985668,
+  "dolby": 984755,
+  "dolly": 986782,
+  "domain": 983511,
+  "domain-off": 986479,
+  "domain-plus": 987309,
+  "domain-remove": 987310,
+  "dome-light": 988190,
+  "domino-mask": 987171,
+  "donkey": 985026,
+  "door": 985114,
+  "door-closed": 985115,
+  "door-closed-lock": 987311,
+  "door-open": 985116,
+  "doorbell": 987878,
+  "doorbell-video": 985193,
+  "dot-net": 985774,
+  "dots-horizontal": 983512,
+  "dots-horizontal-circle": 985027,
+  "dots-horizontal-circle-outline": 985997,
+  "dots-vertical": 983513,
+  "dots-vertical-circle": 985028,
+  "dots-vertical-circle-outline": 985998,
+  "douban": 984730,
+  "download": 983514,
+  "download-box": 988258,
+  "download-box-outline": 988259,
+  "download-circle": 988260,
+  "download-circle-outline": 988261,
+  "download-lock": 987936,
+  "download-lock-outline": 987937,
+  "download-multiple": 985577,
+  "download-network": 984820,
+  "download-network-outline": 986214,
+  "download-off": 987312,
+  "download-off-outline": 987313,
+  "download-outline": 985999,
+  "drag": 983515,
+  "drag-horizontal": 983516,
+  "drag-horizontal-variant": 987888,
+  "drag-variant": 986000,
+  "drag-vertical": 983517,
+  "drag-vertical-variant": 987889,
+  "drama-masks": 986370,
+  "draw": 986953,
+  "drawing": 983518,
+  "drawing-box": 983519,
+  "dresser": 986954,
+  "dresser-outline": 986955,
+  "drone": 983522,
+  "dropbox": 983523,
+  "drupal": 983524,
+  "duck": 983525,
+  "dumbbell": 983526,
+  "dump-truck": 986215,
+  "ear-hearing": 985029,
+  "ear-hearing-off": 985669,
+  "earth": 983527,
+  "earth-arrow-right": 987921,
+  "earth-box": 984781,
+  "earth-box-minus": 988167,
+  "earth-box-off": 984782,
+  "earth-box-plus": 988166,
+  "earth-box-remove": 988168,
+  "earth-minus": 988164,
+  "earth-off": 983528,
+  "earth-plus": 988163,
+  "earth-remove": 988165,
+  "egg": 985775,
+  "egg-easter": 985776,
+  "egg-off": 988144,
+  "egg-off-outline": 988145,
+  "egg-outline": 988146,
+  "eight-track": 985578,
+  "eject": 983530,
+  "eject-outline": 986001,
+  "electric-switch": 986783,
+  "electric-switch-closed": 987353,
+  "electron-framework": 987172,
+  "elephant": 985030,
+  "elevation-decline": 983531,
+  "elevation-rise": 983532,
+  "elevator": 983533,
+  "elevator-down": 987842,
+  "elevator-passenger": 988033,
+  "elevator-up": 987841,
+  "ellipse": 986784,
+  "ellipse-outline": 986785,
+  "email": 983534,
+  "email-alert": 984783,
+  "email-alert-outline": 986434,
+  "email-box": 986371,
+  "email-check": 985777,
+  "email-check-outline": 985778,
+  "email-edit": 986851,
+  "email-edit-outline": 986852,
+  "email-lock": 983537,
+  "email-mark-as-unread": 986002,
+  "email-minus": 986853,
+  "email-minus-outline": 986854,
+  "email-multiple": 986855,
+  "email-multiple-outline": 986856,
+  "email-newsletter": 987057,
+  "email-off": 988131,
+  "email-off-outline": 988132,
+  "email-open": 983535,
+  "email-open-multiple": 986857,
+  "email-open-multiple-outline": 986858,
+  "email-open-outline": 984559,
+  "email-outline": 983536,
+  "email-plus": 985579,
+  "email-plus-outline": 985580,
+  "email-receive": 987354,
+  "email-receive-outline": 987355,
+  "email-search": 985441,
+  "email-search-outline": 985442,
+  "email-send": 987356,
+  "email-send-outline": 987357,
+  "email-sync": 987847,
+  "email-sync-outline": 987848,
+  "email-variant": 984560,
+  "ember": 985904,
+  "emby": 984756,
+  "emoticon": 986216,
+  "emoticon-angry": 986217,
+  "emoticon-angry-outline": 986218,
+  "emoticon-confused": 987358,
+  "emoticon-confused-outline": 987359,
+  "emoticon-cool": 986219,
+  "emoticon-cool-outline": 983539,
+  "emoticon-cry": 986220,
+  "emoticon-cry-outline": 986221,
+  "emoticon-dead": 986222,
+  "emoticon-dead-outline": 984731,
+  "emoticon-devil": 986223,
+  "emoticon-devil-outline": 983540,
+  "emoticon-excited": 986224,
+  "emoticon-excited-outline": 984732,
+  "emoticon-frown": 986956,
+  "emoticon-frown-outline": 986957,
+  "emoticon-happy": 986225,
+  "emoticon-happy-outline": 983541,
+  "emoticon-kiss": 986226,
+  "emoticon-kiss-outline": 986227,
+  "emoticon-lol": 987668,
+  "emoticon-lol-outline": 987669,
+  "emoticon-neutral": 986228,
+  "emoticon-neutral-outline": 983542,
+  "emoticon-outline": 983538,
+  "emoticon-poop": 983543,
+  "emoticon-poop-outline": 986229,
+  "emoticon-sad": 986230,
+  "emoticon-sad-outline": 983544,
+  "emoticon-tongue": 983545,
+  "emoticon-tongue-outline": 986231,
+  "emoticon-wink": 986232,
+  "emoticon-wink-outline": 986233,
+  "engine": 983546,
+  "engine-off": 985670,
+  "engine-off-outline": 985671,
+  "engine-outline": 983547,
+  "epsilon": 987360,
+  "equal": 983548,
+  "equal-box": 983549,
+  "equalizer": 986786,
+  "equalizer-outline": 986787,
+  "eraser": 983550,
+  "eraser-variant": 984642,
+  "escalator": 983551,
+  "escalator-box": 988057,
+  "escalator-down": 987840,
+  "escalator-up": 987839,
+  "eslint": 986234,
+  "et": 985779,
+  "ethereum": 985194,
+  "ethernet": 983552,
+  "ethernet-cable": 983553,
+  "ethernet-cable-off": 983554,
+  "ev-station": 984561,
+  "evernote": 983556,
+  "excavator": 987173,
+  "exclamation": 983557,
+  "exclamation-thick": 987704,
+  "exit-run": 985672,
+  "exit-to-app": 983558,
+  "expand-all": 985780,
+  "expand-all-outline": 985781,
+  "expansion-card": 985262,
+  "expansion-card-variant": 987058,
+  "exponent": 985443,
+  "exponent-box": 985444,
+  "export": 983559,
+  "export-variant": 986003,
+  "eye": 983560,
+  "eye-check": 986372,
+  "eye-check-outline": 986373,
+  "eye-circle": 986004,
+  "eye-circle-outline": 986005,
+  "eye-minus": 987174,
+  "eye-minus-outline": 987175,
+  "eye-off": 983561,
+  "eye-off-outline": 984785,
+  "eye-outline": 984784,
+  "eye-plus": 985195,
+  "eye-plus-outline": 985196,
+  "eye-settings": 985197,
+  "eye-settings-outline": 985198,
+  "eyedropper": 983562,
+  "eyedropper-minus": 988125,
+  "eyedropper-off": 988127,
+  "eyedropper-plus": 988124,
+  "eyedropper-remove": 988126,
+  "eyedropper-variant": 983563,
+  "face": 984643,
+  "face-agent": 986480,
+  "face-outline": 986006,
+  "face-profile": 984644,
+  "face-profile-woman": 987254,
+  "face-recognition": 986235,
+  "face-woman": 987255,
+  "face-woman-outline": 987256,
+  "facebook": 983564,
+  "facebook-messenger": 983566,
+  "facebook-workplace": 985905,
+  "factory": 983567,
+  "fan": 983568,
+  "fan-alert": 988268,
+  "fan-chevron-down": 988269,
+  "fan-chevron-up": 988270,
+  "fan-minus": 988272,
+  "fan-off": 985117,
+  "fan-plus": 988271,
+  "fan-remove": 988273,
+  "fan-speed-1": 988274,
+  "fan-speed-2": 988275,
+  "fan-speed-3": 988276,
+  "fast-forward": 983569,
+  "fast-forward-10": 986481,
+  "fast-forward-30": 986374,
+  "fast-forward-5": 987640,
+  "fast-forward-outline": 984786,
+  "fax": 983570,
+  "feather": 984787,
+  "feature-search": 985673,
+  "feature-search-outline": 985674,
+  "fedora": 985307,
+  "fencing": 988353,
+  "ferris-wheel": 986788,
+  "ferry": 983571,
+  "file": 983572,
+  "file-account": 984891,
+  "file-account-outline": 987176,
+  "file-alert": 985675,
+  "file-alert-outline": 985676,
+  "file-cabinet": 985782,
+  "file-cad": 986859,
+  "file-cad-box": 986860,
+  "file-cancel": 986566,
+  "file-cancel-outline": 986567,
+  "file-certificate": 987526,
+  "file-certificate-outline": 987527,
+  "file-chart": 983573,
+  "file-chart-outline": 987177,
+  "file-check": 983574,
+  "file-check-outline": 986665,
+  "file-clock": 987873,
+  "file-clock-outline": 987874,
+  "file-cloud": 983575,
+  "file-cloud-outline": 987178,
+  "file-code": 983598,
+  "file-code-outline": 987179,
+  "file-cog": 987259,
+  "file-cog-outline": 987260,
+  "file-compare": 985258,
+  "file-delimited": 983576,
+  "file-delimited-outline": 986789,
+  "file-document": 983577,
+  "file-document-edit": 986568,
+  "file-document-edit-outline": 986569,
+  "file-document-outline": 985582,
+  "file-download": 985445,
+  "file-download-outline": 985446,
+  "file-edit": 987623,
+  "file-edit-outline": 987624,
+  "file-excel": 983579,
+  "file-excel-box": 983580,
+  "file-excel-box-outline": 987180,
+  "file-excel-outline": 987181,
+  "file-export": 983581,
+  "file-export-outline": 987182,
+  "file-eye": 986570,
+  "file-eye-outline": 986571,
+  "file-find": 983582,
+  "file-find-outline": 986007,
+  "file-hidden": 984595,
+  "file-image": 983583,
+  "file-image-outline": 986800,
+  "file-import": 983584,
+  "file-import-outline": 987183,
+  "file-key": 987524,
+  "file-key-outline": 987525,
+  "file-link": 987511,
+  "file-link-outline": 987512,
+  "file-lock": 983585,
+  "file-lock-outline": 987184,
+  "file-move": 985785,
+  "file-move-outline": 987185,
+  "file-multiple": 983586,
+  "file-multiple-outline": 987186,
+  "file-music": 983587,
+  "file-music-outline": 986666,
+  "file-outline": 983588,
+  "file-pdf": 983589,
+  "file-pdf-box": 983590,
+  "file-pdf-box-outline": 987059,
+  "file-pdf-outline": 986669,
+  "file-percent": 985118,
+  "file-percent-outline": 987187,
+  "file-phone": 987513,
+  "file-phone-outline": 987514,
+  "file-plus": 984914,
+  "file-plus-outline": 986861,
+  "file-powerpoint": 983591,
+  "file-powerpoint-box": 983592,
+  "file-powerpoint-box-outline": 987188,
+  "file-powerpoint-outline": 987189,
+  "file-presentation-box": 983593,
+  "file-question": 985199,
+  "file-question-outline": 987190,
+  "file-refresh": 985368,
+  "file-refresh-outline": 984385,
+  "file-remove": 986008,
+  "file-remove-outline": 987191,
+  "file-replace": 985906,
+  "file-replace-outline": 985907,
+  "file-restore": 984688,
+  "file-restore-outline": 987192,
+  "file-search": 986236,
+  "file-search-outline": 986237,
+  "file-send": 983594,
+  "file-send-outline": 987193,
+  "file-settings": 987257,
+  "file-settings-outline": 987258,
+  "file-star": 987194,
+  "file-star-outline": 987195,
+  "file-swap": 987060,
+  "file-swap-outline": 987061,
+  "file-sync": 987670,
+  "file-sync-outline": 987671,
+  "file-table": 986238,
+  "file-table-box": 987361,
+  "file-table-box-multiple": 987362,
+  "file-table-box-multiple-outline": 987363,
+  "file-table-box-outline": 987364,
+  "file-table-outline": 986239,
+  "file-tree": 984645,
+  "file-tree-outline": 988114,
+  "file-undo": 985308,
+  "file-undo-outline": 987196,
+  "file-upload": 985677,
+  "file-upload-outline": 985678,
+  "file-video": 983595,
+  "file-video-outline": 986668,
+  "file-word": 983596,
+  "file-word-box": 983597,
+  "file-word-box-outline": 987197,
+  "file-word-outline": 987198,
+  "film": 983599,
+  "filmstrip": 983600,
+  "filmstrip-box": 983858,
+  "filmstrip-box-multiple": 986392,
+  "filmstrip-off": 983601,
+  "filter": 983602,
+  "filter-menu": 987365,
+  "filter-menu-outline": 987366,
+  "filter-minus": 986862,
+  "filter-minus-outline": 986863,
+  "filter-outline": 983603,
+  "filter-plus": 986864,
+  "filter-plus-outline": 986865,
+  "filter-remove": 983604,
+  "filter-remove-outline": 983605,
+  "filter-variant": 983606,
+  "filter-variant-minus": 987410,
+  "filter-variant-plus": 987411,
+  "filter-variant-remove": 987199,
+  "finance": 985119,
+  "find-replace": 984788,
+  "fingerprint": 983607,
+  "fingerprint-off": 986801,
+  "fire": 983608,
+  "fire-extinguisher": 986866,
+  "fire-hydrant": 987447,
+  "fire-hydrant-alert": 987448,
+  "fire-hydrant-off": 987449,
+  "fire-truck": 985259,
+  "firebase": 985447,
+  "firefox": 983609,
+  "fireplace": 986670,
+  "fireplace-off": 986671,
+  "firework": 986672,
+  "fish": 983610,
+  "fish-off": 988147,
+  "fishbowl": 986867,
+  "fishbowl-outline": 986868,
+  "fit-to-page": 986869,
+  "fit-to-page-outline": 986870,
+  "flag": 983611,
+  "flag-checkered": 983612,
+  "flag-minus": 986009,
+  "flag-minus-outline": 987314,
+  "flag-outline": 983613,
+  "flag-plus": 986010,
+  "flag-plus-outline": 987315,
+  "flag-remove": 986011,
+  "flag-remove-outline": 987316,
+  "flag-triangle": 983615,
+  "flag-variant": 983616,
+  "flag-variant-outline": 983614,
+  "flare": 986482,
+  "flash": 983617,
+  "flash-alert": 986871,
+  "flash-alert-outline": 986872,
+  "flash-auto": 983618,
+  "flash-circle": 985120,
+  "flash-off": 983619,
+  "flash-outline": 984789,
+  "flash-red-eye": 984699,
+  "flashlight": 983620,
+  "flashlight-off": 983621,
+  "flask": 983187,
+  "flask-empty": 983188,
+  "flask-empty-minus": 987706,
+  "flask-empty-minus-outline": 987707,
+  "flask-empty-off": 988148,
+  "flask-empty-off-outline": 988149,
+  "flask-empty-outline": 983189,
+  "flask-empty-plus": 987708,
+  "flask-empty-plus-outline": 987709,
+  "flask-empty-remove": 987710,
+  "flask-empty-remove-outline": 987711,
+  "flask-minus": 987712,
+  "flask-minus-outline": 987713,
+  "flask-off": 988150,
+  "flask-off-outline": 988151,
+  "flask-outline": 983190,
+  "flask-plus": 987714,
+  "flask-plus-outline": 987715,
+  "flask-remove": 987716,
+  "flask-remove-outline": 987717,
+  "flask-round-bottom": 987723,
+  "flask-round-bottom-empty": 987724,
+  "flask-round-bottom-empty-outline": 987725,
+  "flask-round-bottom-outline": 987726,
+  "fleur-de-lis": 987907,
+  "flip-horizontal": 987367,
+  "flip-to-back": 983623,
+  "flip-to-front": 983624,
+  "flip-vertical": 987368,
+  "floor-lamp": 985309,
+  "floor-lamp-dual": 987200,
+  "floor-lamp-variant": 987201,
+  "floor-plan": 985121,
+  "floppy": 983625,
+  "floppy-variant": 985583,
+  "flower": 983626,
+  "flower-outline": 985584,
+  "flower-poppy": 986376,
+  "flower-tulip": 985585,
+  "flower-tulip-outline": 985586,
+  "focus-auto": 986958,
+  "focus-field": 986959,
+  "focus-field-horizontal": 986960,
+  "focus-field-vertical": 986961,
+  "folder": 983627,
+  "folder-account": 983628,
+  "folder-account-outline": 986012,
+  "folder-alert": 986572,
+  "folder-alert-outline": 986573,
+  "folder-clock": 985786,
+  "folder-clock-outline": 985787,
+  "folder-cog": 987263,
+  "folder-cog-outline": 987264,
+  "folder-download": 983629,
+  "folder-download-outline": 987369,
+  "folder-edit": 985310,
+  "folder-edit-outline": 986574,
+  "folder-google-drive": 983630,
+  "folder-heart": 987370,
+  "folder-heart-outline": 987371,
+  "folder-home": 987317,
+  "folder-home-outline": 987318,
+  "folder-image": 983631,
+  "folder-information": 987319,
+  "folder-information-outline": 987320,
+  "folder-key": 985260,
+  "folder-key-network": 985261,
+  "folder-key-network-outline": 986240,
+  "folder-key-outline": 987372,
+  "folder-lock": 983632,
+  "folder-lock-open": 983633,
+  "folder-marker": 987757,
+  "folder-marker-outline": 987758,
+  "folder-move": 983634,
+  "folder-move-outline": 987718,
+  "folder-multiple": 983635,
+  "folder-multiple-image": 983636,
+  "folder-multiple-outline": 983637,
+  "folder-multiple-plus": 988286,
+  "folder-multiple-plus-outline": 988287,
+  "folder-music": 987993,
+  "folder-music-outline": 987994,
+  "folder-network": 985200,
+  "folder-network-outline": 986241,
+  "folder-open": 984944,
+  "folder-open-outline": 986575,
+  "folder-outline": 983638,
+  "folder-plus": 983639,
+  "folder-plus-outline": 986013,
+  "folder-pound": 986377,
+  "folder-pound-outline": 986378,
+  "folder-refresh": 984905,
+  "folder-refresh-outline": 984386,
+  "folder-remove": 983640,
+  "folder-remove-outline": 986014,
+  "folder-search": 985448,
+  "folder-search-outline": 985449,
+  "folder-settings": 987261,
+  "folder-settings-outline": 987262,
+  "folder-star": 984733,
+  "folder-star-multiple": 988115,
+  "folder-star-multiple-outline": 988116,
+  "folder-star-outline": 986015,
+  "folder-swap": 987062,
+  "folder-swap-outline": 987063,
+  "folder-sync": 986379,
+  "folder-sync-outline": 986380,
+  "folder-table": 987875,
+  "folder-table-outline": 987876,
+  "folder-text": 986242,
+  "folder-text-outline": 986243,
+  "folder-upload": 983641,
+  "folder-upload-outline": 987373,
+  "folder-zip": 984811,
+  "folder-zip-outline": 985017,
+  "font-awesome": 983098,
+  "food": 983642,
+  "food-apple": 983643,
+  "food-apple-outline": 986244,
+  "food-croissant": 985032,
+  "food-drumstick": 988191,
+  "food-drumstick-off": 988264,
+  "food-drumstick-off-outline": 988265,
+  "food-drumstick-outline": 988192,
+  "food-fork-drink": 984562,
+  "food-off": 984563,
+  "food-steak": 988266,
+  "food-steak-off": 988267,
+  "food-variant": 983644,
+  "food-variant-off": 988133,
+  "foot-print": 986962,
+  "football": 983645,
+  "football-australian": 983646,
+  "football-helmet": 983647,
+  "forklift": 985033,
+  "form-dropdown": 988160,
+  "form-select": 988161,
+  "form-textarea": 987285,
+  "form-textbox": 984590,
+  "form-textbox-lock": 987997,
+  "form-textbox-password": 985077,
+  "format-align-bottom": 984915,
+  "format-align-center": 983648,
+  "format-align-justify": 983649,
+  "format-align-left": 983650,
+  "format-align-middle": 984916,
+  "format-align-right": 983651,
+  "format-align-top": 984917,
+  "format-annotation-minus": 985788,
+  "format-annotation-plus": 984646,
+  "format-bold": 983652,
+  "format-clear": 983653,
+  "format-color-fill": 983654,
+  "format-color-highlight": 986673,
+  "format-color-marker-cancel": 987923,
+  "format-color-text": 984734,
+  "format-columns": 985311,
+  "format-float-center": 983655,
+  "format-float-left": 983656,
+  "format-float-none": 983657,
+  "format-float-right": 983658,
+  "format-font": 984790,
+  "format-font-size-decrease": 985587,
+  "format-font-size-increase": 985588,
+  "format-header-1": 983659,
+  "format-header-2": 983660,
+  "format-header-3": 983661,
+  "format-header-4": 983662,
+  "format-header-5": 983663,
+  "format-header-6": 983664,
+  "format-header-decrease": 983665,
+  "format-header-equal": 983666,
+  "format-header-increase": 983667,
+  "format-header-pound": 983668,
+  "format-horizontal-align-center": 984606,
+  "format-horizontal-align-left": 984607,
+  "format-horizontal-align-right": 984608,
+  "format-indent-decrease": 983669,
+  "format-indent-increase": 983670,
+  "format-italic": 983671,
+  "format-letter-case": 985908,
+  "format-letter-case-lower": 985909,
+  "format-letter-case-upper": 985910,
+  "format-letter-ends-with": 987064,
+  "format-letter-matches": 987065,
+  "format-letter-starts-with": 987066,
+  "format-line-spacing": 983672,
+  "format-line-style": 984520,
+  "format-line-weight": 984521,
+  "format-list-bulleted": 983673,
+  "format-list-bulleted-square": 986576,
+  "format-list-bulleted-triangle": 986802,
+  "format-list-bulleted-type": 983674,
+  "format-list-checkbox": 985450,
+  "format-list-checks": 984918,
+  "format-list-numbered": 983675,
+  "format-list-numbered-rtl": 986381,
+  "format-list-text": 987759,
+  "format-overline": 986803,
+  "format-page-break": 984791,
+  "format-paint": 983676,
+  "format-paragraph": 983677,
+  "format-pilcrow": 984792,
+  "format-quote-close": 983678,
+  "format-quote-close-outline": 987560,
+  "format-quote-open": 984919,
+  "format-quote-open-outline": 987559,
+  "format-rotate-90": 984746,
+  "format-section": 984735,
+  "format-size": 983679,
+  "format-strikethrough": 983680,
+  "format-strikethrough-variant": 983681,
+  "format-subscript": 983682,
+  "format-superscript": 983683,
+  "format-text": 983684,
+  "format-text-rotation-angle-down": 987067,
+  "format-text-rotation-angle-up": 987068,
+  "format-text-rotation-down": 986483,
+  "format-text-rotation-down-vertical": 987069,
+  "format-text-rotation-none": 986484,
+  "format-text-rotation-up": 987070,
+  "format-text-rotation-vertical": 987071,
+  "format-text-variant": 986674,
+  "format-text-wrapping-clip": 986382,
+  "format-text-wrapping-overflow": 986383,
+  "format-text-wrapping-wrap": 986384,
+  "format-textbox": 986385,
+  "format-textdirection-l-to-r": 983685,
+  "format-textdirection-r-to-l": 983686,
+  "format-title": 984564,
+  "format-underline": 983687,
+  "format-vertical-align-bottom": 984609,
+  "format-vertical-align-center": 984610,
+  "format-vertical-align-top": 984611,
+  "format-wrap-inline": 983688,
+  "format-wrap-square": 983689,
+  "format-wrap-tight": 983690,
+  "format-wrap-top-bottom": 983691,
+  "forum": 983692,
+  "forum-outline": 985122,
+  "forward": 983693,
+  "forwardburger": 986485,
+  "fountain": 985451,
+  "fountain-pen": 986386,
+  "fountain-pen-tip": 986387,
+  "freebsd": 985312,
+  "frequently-asked-questions": 986804,
+  "fridge": 983696,
+  "fridge-alert": 987569,
+  "fridge-alert-outline": 987570,
+  "fridge-bottom": 983698,
+  "fridge-off": 987567,
+  "fridge-off-outline": 987568,
+  "fridge-outline": 983695,
+  "fridge-top": 983697,
+  "fruit-cherries": 987202,
+  "fruit-cherries-off": 988152,
+  "fruit-citrus": 987203,
+  "fruit-citrus-off": 988153,
+  "fruit-grapes": 987204,
+  "fruit-grapes-outline": 987205,
+  "fruit-pineapple": 987206,
+  "fruit-watermelon": 987207,
+  "fuel": 985034,
+  "fullscreen": 983699,
+  "fullscreen-exit": 983700,
+  "function": 983701,
+  "function-variant": 985201,
+  "furigana-horizontal": 987265,
+  "furigana-vertical": 987266,
+  "fuse": 986245,
+  "fuse-alert": 988205,
+  "fuse-blade": 986246,
+  "fuse-off": 988204,
+  "gamepad": 983702,
+  "gamepad-circle": 986675,
+  "gamepad-circle-down": 986676,
+  "gamepad-circle-left": 986677,
+  "gamepad-circle-outline": 986678,
+  "gamepad-circle-right": 986679,
+  "gamepad-circle-up": 986680,
+  "gamepad-down": 986681,
+  "gamepad-left": 986682,
+  "gamepad-right": 986683,
+  "gamepad-round": 986684,
+  "gamepad-round-down": 986685,
+  "gamepad-round-left": 986686,
+  "gamepad-round-outline": 986687,
+  "gamepad-round-right": 986688,
+  "gamepad-round-up": 986689,
+  "gamepad-square": 986805,
+  "gamepad-square-outline": 986806,
+  "gamepad-up": 986690,
+  "gamepad-variant": 983703,
+  "gamepad-variant-outline": 986807,
+  "gamma": 987374,
+  "gantry-crane": 986577,
+  "garage": 984793,
+  "garage-alert": 985202,
+  "garage-alert-variant": 987861,
+  "garage-open": 984794,
+  "garage-open-variant": 987860,
+  "garage-variant": 987859,
+  "gas-cylinder": 984647,
+  "gas-station": 983704,
+  "gas-station-off": 988169,
+  "gas-station-off-outline": 988170,
+  "gas-station-outline": 986808,
+  "gate": 983705,
+  "gate-and": 985313,
+  "gate-arrow-right": 987497,
+  "gate-nand": 985314,
+  "gate-nor": 985315,
+  "gate-not": 985316,
+  "gate-open": 987498,
+  "gate-or": 985317,
+  "gate-xnor": 985318,
+  "gate-xor": 985319,
+  "gatsby": 986691,
+  "gauge": 983706,
+  "gauge-empty": 985203,
+  "gauge-full": 985204,
+  "gauge-low": 985205,
+  "gavel": 983707,
+  "gender-female": 983708,
+  "gender-male": 983709,
+  "gender-male-female": 983710,
+  "gender-male-female-variant": 987455,
+  "gender-non-binary": 987456,
+  "gender-transgender": 983711,
+  "gentoo": 985320,
+  "gesture": 985035,
+  "gesture-double-tap": 984892,
+  "gesture-pinch": 985789,
+  "gesture-spread": 985790,
+  "gesture-swipe": 986486,
+  "gesture-swipe-down": 984893,
+  "gesture-swipe-horizontal": 985791,
+  "gesture-swipe-left": 984894,
+  "gesture-swipe-right": 984895,
+  "gesture-swipe-up": 984896,
+  "gesture-swipe-vertical": 985792,
+  "gesture-tap": 984897,
+  "gesture-tap-box": 987817,
+  "gesture-tap-button": 987816,
+  "gesture-tap-hold": 986487,
+  "gesture-two-double-tap": 984898,
+  "gesture-two-tap": 984899,
+  "ghost": 983712,
+  "ghost-off": 985589,
+  "gif": 986488,
+  "gift": 986692,
+  "gift-outline": 983713,
+  "git": 983714,
+  "github": 983716,
+  "gitlab": 986016,
+  "glass-cocktail": 983894,
+  "glass-flute": 983717,
+  "glass-mug": 983718,
+  "glass-mug-variant": 987414,
+  "glass-pint-outline": 987917,
+  "glass-stange": 983719,
+  "glass-tulip": 983720,
+  "glass-wine": 985206,
+  "glasses": 983722,
+  "globe-light": 987863,
+  "globe-model": 985321,
+  "gmail": 983723,
+  "gnome": 983724,
+  "go-kart": 986489,
+  "go-kart-track": 986490,
+  "gog": 986017,
+  "gold": 987727,
+  "golf": 985123,
+  "golf-cart": 987556,
+  "golf-tee": 987267,
+  "gondola": 984710,
+  "goodreads": 986491,
+  "google": 983725,
+  "google-ads": 986247,
+  "google-analytics": 985036,
+  "google-assistant": 985037,
+  "google-cardboard": 983726,
+  "google-chrome": 983727,
+  "google-circles": 983728,
+  "google-circles-communities": 983729,
+  "google-circles-extended": 983730,
+  "google-circles-group": 983731,
+  "google-classroom": 983744,
+  "google-cloud": 987638,
+  "google-controller": 983732,
+  "google-controller-off": 983733,
+  "google-downasaur": 988002,
+  "google-drive": 983734,
+  "google-earth": 983735,
+  "google-fit": 985452,
+  "google-glass": 983736,
+  "google-hangouts": 983753,
+  "google-home": 985124,
+  "google-keep": 984796,
+  "google-lens": 985590,
+  "google-maps": 984565,
+  "google-my-business": 987208,
+  "google-nearby": 983737,
+  "google-photos": 984797,
+  "google-play": 983740,
+  "google-plus": 983741,
+  "google-podcast": 986809,
+  "google-spreadsheet": 985591,
+  "google-street-view": 986248,
+  "google-translate": 983743,
+  "gradient": 984736,
+  "grain": 986492,
+  "graph": 987209,
+  "graph-outline": 987210,
+  "graphql": 985207,
+  "grave-stone": 986018,
+  "grease-pencil": 984648,
+  "greater-than": 985453,
+  "greater-than-or-equal": 985454,
+  "grid": 983745,
+  "grid-large": 984920,
+  "grid-off": 983746,
+  "grill": 986693,
+  "grill-outline": 987530,
+  "group": 983747,
+  "guitar-acoustic": 984945,
+  "guitar-electric": 983748,
+  "guitar-pick": 983749,
+  "guitar-pick-outline": 983750,
+  "guy-fawkes-mask": 985125,
+  "hail": 985793,
+  "hair-dryer": 987375,
+  "hair-dryer-outline": 987376,
+  "halloween": 986019,
+  "hamburger": 984709,
+  "hammer": 985322,
+  "hammer-screwdriver": 987938,
+  "hammer-wrench": 987939,
+  "hand": 985679,
+  "hand-heart": 987377,
+  "hand-left": 986694,
+  "hand-okay": 985680,
+  "hand-peace": 985681,
+  "hand-peace-variant": 985682,
+  "hand-pointing-down": 985683,
+  "hand-pointing-left": 985684,
+  "hand-pointing-right": 983751,
+  "hand-pointing-up": 985685,
+  "hand-right": 986695,
+  "hand-saw": 986696,
+  "hand-water": 988063,
+  "handball": 986963,
+  "handcuffs": 987454,
+  "handshake": 987672,
+  "hanger": 983752,
+  "hard-hat": 985455,
+  "harddisk": 983754,
+  "harddisk-plus": 987211,
+  "harddisk-remove": 987212,
+  "hat-fedora": 986020,
+  "hazard-lights": 986249,
+  "hdr": 986493,
+  "hdr-off": 986494,
+  "head": 987998,
+  "head-alert": 987960,
+  "head-alert-outline": 987961,
+  "head-check": 987962,
+  "head-check-outline": 987963,
+  "head-cog": 987964,
+  "head-cog-outline": 987965,
+  "head-dots-horizontal": 987966,
+  "head-dots-horizontal-outline": 987967,
+  "head-flash": 987968,
+  "head-flash-outline": 987969,
+  "head-heart": 987970,
+  "head-heart-outline": 987971,
+  "head-lightbulb": 987972,
+  "head-lightbulb-outline": 987973,
+  "head-minus": 987974,
+  "head-minus-outline": 987975,
+  "head-outline": 987999,
+  "head-plus": 987976,
+  "head-plus-outline": 987977,
+  "head-question": 987978,
+  "head-question-outline": 987979,
+  "head-remove": 987980,
+  "head-remove-outline": 987981,
+  "head-snowflake": 987982,
+  "head-snowflake-outline": 987983,
+  "head-sync": 987984,
+  "head-sync-outline": 987985,
+  "headphones": 983755,
+  "headphones-bluetooth": 985456,
+  "headphones-box": 983756,
+  "headphones-off": 985038,
+  "headphones-settings": 983757,
+  "headset": 983758,
+  "headset-dock": 983759,
+  "headset-off": 983760,
+  "heart": 983761,
+  "heart-box": 983762,
+  "heart-box-outline": 983763,
+  "heart-broken": 983764,
+  "heart-broken-outline": 986388,
+  "heart-circle": 985457,
+  "heart-circle-outline": 985458,
+  "heart-flash": 986873,
+  "heart-half": 984799,
+  "heart-half-full": 984798,
+  "heart-half-outline": 984800,
+  "heart-minus": 988207,
+  "heart-minus-outline": 988210,
+  "heart-multiple": 985686,
+  "heart-multiple-outline": 985687,
+  "heart-off": 984921,
+  "heart-off-outline": 988212,
+  "heart-outline": 983765,
+  "heart-plus": 988206,
+  "heart-plus-outline": 988209,
+  "heart-pulse": 984566,
+  "heart-remove": 988208,
+  "heart-remove-outline": 988211,
+  "helicopter": 985794,
+  "help": 983766,
+  "help-box": 984971,
+  "help-circle": 983767,
+  "help-circle-outline": 984613,
+  "help-network": 984821,
+  "help-network-outline": 986250,
+  "help-rhombus": 986021,
+  "help-rhombus-outline": 986022,
+  "hexadecimal": 987815,
+  "hexagon": 983768,
+  "hexagon-multiple": 984801,
+  "hexagon-multiple-outline": 987378,
+  "hexagon-outline": 983769,
+  "hexagon-slice-1": 985795,
+  "hexagon-slice-2": 985796,
+  "hexagon-slice-3": 985797,
+  "hexagon-slice-4": 985798,
+  "hexagon-slice-5": 985799,
+  "hexagon-slice-6": 985800,
+  "hexagram": 985801,
+  "hexagram-outline": 985802,
+  "high-definition": 985039,
+  "high-definition-box": 985208,
+  "highway": 984567,
+  "hiking": 986495,
+  "hinduism": 985459,
+  "history": 983770,
+  "hockey-puck": 985209,
+  "hockey-sticks": 985210,
+  "hololens": 983771,
+  "home": 983772,
+  "home-account": 985126,
+  "home-alert": 985211,
+  "home-analytics": 986810,
+  "home-assistant": 985040,
+  "home-automation": 985041,
+  "home-circle": 985042,
+  "home-circle-outline": 987213,
+  "home-city": 986389,
+  "home-city-outline": 986390,
+  "home-currency-usd": 985263,
+  "home-edit": 987481,
+  "home-edit-outline": 987482,
+  "home-export-outline": 987035,
+  "home-flood": 986874,
+  "home-floor-0": 986578,
+  "home-floor-1": 986496,
+  "home-floor-2": 986497,
+  "home-floor-3": 986498,
+  "home-floor-a": 986499,
+  "home-floor-b": 986500,
+  "home-floor-g": 986501,
+  "home-floor-l": 986502,
+  "home-floor-negative-1": 986579,
+  "home-group": 986580,
+  "home-heart": 985127,
+  "home-import-outline": 987036,
+  "home-lightbulb": 987729,
+  "home-lightbulb-outline": 987730,
+  "home-lock": 985323,
+  "home-lock-open": 985324,
+  "home-map-marker": 984568,
+  "home-minus": 985460,
+  "home-minus-outline": 988117,
+  "home-modern": 983773,
+  "home-outline": 984737,
+  "home-plus": 985461,
+  "home-plus-outline": 988118,
+  "home-remove": 987719,
+  "home-remove-outline": 988119,
+  "home-roof": 987435,
+  "home-search": 988080,
+  "home-search-outline": 988081,
+  "home-thermometer": 986964,
+  "home-thermometer-outline": 986965,
+  "home-variant": 983774,
+  "home-variant-outline": 986023,
+  "hook": 984802,
+  "hook-off": 984803,
+  "hops": 983775,
+  "horizontal-rotate-clockwise": 987379,
+  "horizontal-rotate-counterclockwise": 987380,
+  "horseshoe": 985688,
+  "hospital": 987126,
+  "hospital-box": 983776,
+  "hospital-box-outline": 987127,
+  "hospital-building": 983777,
+  "hospital-marker": 983778,
+  "hot-tub": 985128,
+  "hours-24": 988280,
+  "hubspot": 986391,
+  "hulu": 985129,
+  "human": 983782,
+  "human-baby-changing-table": 988043,
+  "human-child": 983783,
+  "human-female": 984649,
+  "human-female-boy": 985689,
+  "human-female-female": 985690,
+  "human-female-girl": 985691,
+  "human-greeting": 984650,
+  "human-handsdown": 984651,
+  "human-handsup": 984652,
+  "human-male": 984653,
+  "human-male-boy": 985692,
+  "human-male-child": 988044,
+  "human-male-female": 983784,
+  "human-male-girl": 985693,
+  "human-male-height": 986875,
+  "human-male-height-variant": 986876,
+  "human-male-male": 985694,
+  "human-pregnant": 984527,
+  "human-wheelchair": 988045,
+  "humble-bundle": 984900,
+  "hvac": 987986,
+  "hydraulic-oil-level": 987940,
+  "hydraulic-oil-temperature": 987941,
+  "hydro-power": 987877,
+  "ice-cream": 985130,
+  "ice-cream-off": 986706,
+  "ice-pop": 986877,
+  "id-card": 987072,
+  "identifier": 986878,
+  "ideogram-cjk": 987953,
+  "ideogram-cjk-variant": 987954,
+  "iframe": 986251,
+  "iframe-array": 987381,
+  "iframe-array-outline": 987382,
+  "iframe-braces": 987383,
+  "iframe-braces-outline": 987384,
+  "iframe-outline": 986252,
+  "iframe-parentheses": 987385,
+  "iframe-parentheses-outline": 987386,
+  "iframe-variable": 987387,
+  "iframe-variable-outline": 987388,
+  "image": 983785,
+  "image-album": 983786,
+  "image-area": 983787,
+  "image-area-close": 983788,
+  "image-auto-adjust": 987073,
+  "image-broken": 983789,
+  "image-broken-variant": 983790,
+  "image-edit": 987619,
+  "image-edit-outline": 987620,
+  "image-filter-black-white": 983792,
+  "image-filter-center-focus": 983793,
+  "image-filter-center-focus-strong": 986879,
+  "image-filter-center-focus-strong-outline": 986880,
+  "image-filter-center-focus-weak": 983794,
+  "image-filter-drama": 983795,
+  "image-filter-frames": 983796,
+  "image-filter-hdr": 983797,
+  "image-filter-none": 983798,
+  "image-filter-tilt-shift": 983799,
+  "image-filter-vintage": 983800,
+  "image-frame": 986697,
+  "image-minus": 988185,
+  "image-move": 985592,
+  "image-multiple": 983801,
+  "image-multiple-outline": 983791,
+  "image-off": 985131,
+  "image-off-outline": 987601,
+  "image-outline": 985462,
+  "image-plus": 985212,
+  "image-remove": 988184,
+  "image-search": 985463,
+  "image-search-outline": 985464,
+  "image-size-select-actual": 986253,
+  "image-size-select-large": 986254,
+  "image-size-select-small": 986255,
+  "import": 983802,
+  "inbox": 984711,
+  "inbox-arrow-down": 983803,
+  "inbox-arrow-down-outline": 987760,
+  "inbox-arrow-up": 984017,
+  "inbox-arrow-up-outline": 987761,
+  "inbox-full": 987762,
+  "inbox-full-outline": 987763,
+  "inbox-multiple": 985264,
+  "inbox-multiple-outline": 986024,
+  "inbox-outline": 987764,
+  "incognito": 984569,
+  "incognito-circle": 988193,
+  "incognito-circle-off": 988194,
+  "incognito-off": 983157,
+  "infinity": 984804,
+  "information": 983804,
+  "information-outline": 983805,
+  "information-variant": 984654,
+  "instagram": 983806,
+  "instrument-triangle": 987214,
+  "invert-colors": 983809,
+  "invert-colors-off": 986698,
+  "iobroker": 987880,
+  "ip": 985695,
+  "ip-network": 985696,
+  "ip-network-outline": 986256,
+  "ipod": 986257,
+  "islam": 985465,
+  "island": 987215,
+  "iv-bag": 987321,
+  "jabber": 986581,
+  "jeepney": 983810,
+  "jellyfish": 986881,
+  "jellyfish-outline": 986882,
+  "jira": 983811,
+  "jquery": 985213,
+  "jsfiddle": 983812,
+  "judaism": 985466,
+  "jump-rope": 987903,
+  "kabaddi": 986503,
+  "karate": 985132,
+  "keg": 983813,
+  "kettle": 984570,
+  "kettle-alert": 987927,
+  "kettle-alert-outline": 987928,
+  "kettle-off": 987931,
+  "kettle-off-outline": 987932,
+  "kettle-outline": 986966,
+  "kettle-steam": 987929,
+  "kettle-steam-outline": 987930,
+  "kettlebell": 987904,
+  "key": 983814,
+  "key-arrow-right": 987922,
+  "key-change": 983815,
+  "key-link": 987551,
+  "key-minus": 983816,
+  "key-outline": 986582,
+  "key-plus": 983817,
+  "key-remove": 983818,
+  "key-star": 987550,
+  "key-variant": 983819,
+  "key-wireless": 987074,
+  "keyboard": 983820,
+  "keyboard-backspace": 983821,
+  "keyboard-caps": 983822,
+  "keyboard-close": 983823,
+  "keyboard-esc": 987831,
+  "keyboard-f1": 987819,
+  "keyboard-f10": 987828,
+  "keyboard-f11": 987829,
+  "keyboard-f12": 987830,
+  "keyboard-f2": 987820,
+  "keyboard-f3": 987821,
+  "keyboard-f4": 987822,
+  "keyboard-f5": 987823,
+  "keyboard-f6": 987824,
+  "keyboard-f7": 987825,
+  "keyboard-f8": 987826,
+  "keyboard-f9": 987827,
+  "keyboard-off": 983824,
+  "keyboard-off-outline": 986699,
+  "keyboard-outline": 985467,
+  "keyboard-return": 983825,
+  "keyboard-settings": 985593,
+  "keyboard-settings-outline": 985594,
+  "keyboard-space": 987216,
+  "keyboard-tab": 983826,
+  "keyboard-variant": 983827,
+  "khanda": 987389,
+  "kickstarter": 984901,
+  "klingon": 987995,
+  "knife": 985595,
+  "knife-military": 985596,
+  "kodi": 983828,
+  "kubernetes": 987390,
+  "label": 983829,
+  "label-multiple": 988021,
+  "label-multiple-outline": 988022,
+  "label-off": 985803,
+  "label-off-outline": 985804,
+  "label-outline": 983830,
+  "label-percent": 987882,
+  "label-percent-outline": 987883,
+  "label-variant": 985805,
+  "label-variant-outline": 985806,
+  "ladybug": 985133,
+  "lambda": 984615,
+  "lamp": 984757,
+  "lan": 983831,
+  "lan-check": 987818,
+  "lan-connect": 983832,
+  "lan-disconnect": 983833,
+  "lan-pending": 983834,
+  "language-c": 984689,
+  "language-cpp": 984690,
+  "language-csharp": 983835,
+  "language-css3": 983836,
+  "language-fortran": 987674,
+  "language-go": 985043,
+  "language-haskell": 986258,
+  "language-html5": 983837,
+  "language-java": 985911,
+  "language-javascript": 983838,
+  "language-kotlin": 987673,
+  "language-lua": 985265,
+  "language-markdown": 983892,
+  "language-markdown-outline": 986971,
+  "language-php": 983839,
+  "language-python": 983840,
+  "language-r": 985044,
+  "language-ruby": 986413,
+  "language-ruby-on-rails": 985807,
+  "language-swift": 984805,
+  "language-typescript": 984806,
+  "language-xaml": 984691,
+  "laptop": 983842,
+  "laptop-chromebook": 983843,
+  "laptop-mac": 983844,
+  "laptop-off": 984807,
+  "laptop-windows": 983845,
+  "laravel": 985808,
+  "laser-pointer": 988292,
+  "lasso": 986883,
+  "lastpass": 984134,
+  "latitude": 986967,
+  "launch": 983847,
+  "lava-lamp": 985045,
+  "layers": 983848,
+  "layers-minus": 986700,
+  "layers-off": 983849,
+  "layers-off-outline": 985597,
+  "layers-outline": 985598,
+  "layers-plus": 986701,
+  "layers-remove": 986702,
+  "layers-search": 987654,
+  "layers-search-outline": 987655,
+  "layers-triple": 986968,
+  "layers-triple-outline": 986969,
+  "lead-pencil": 984655,
+  "leaf": 983850,
+  "leaf-maple": 986259,
+  "leaf-maple-off": 987866,
+  "leaf-off": 987865,
+  "leak": 986583,
+  "leak-off": 986584,
+  "led-off": 983851,
+  "led-on": 983852,
+  "led-outline": 983853,
+  "led-strip": 985046,
+  "led-strip-variant": 987217,
+  "led-variant-off": 983854,
+  "led-variant-on": 983855,
+  "led-variant-outline": 983856,
+  "leek": 987517,
+  "less-than": 985468,
+  "less-than-or-equal": 985469,
+  "library": 983857,
+  "library-shelves": 986025,
+  "license": 987075,
+  "lifebuoy": 985214,
+  "light-switch": 985470,
+  "lightbulb": 983861,
+  "lightbulb-cfl": 987656,
+  "lightbulb-cfl-off": 987657,
+  "lightbulb-cfl-spiral": 987765,
+  "lightbulb-cfl-spiral-off": 987843,
+  "lightbulb-group": 987731,
+  "lightbulb-group-off": 987853,
+  "lightbulb-group-off-outline": 987854,
+  "lightbulb-group-outline": 987732,
+  "lightbulb-multiple": 987733,
+  "lightbulb-multiple-off": 987855,
+  "lightbulb-multiple-off-outline": 987856,
+  "lightbulb-multiple-outline": 987734,
+  "lightbulb-off": 986703,
+  "lightbulb-off-outline": 986704,
+  "lightbulb-on": 984808,
+  "lightbulb-on-outline": 984809,
+  "lightbulb-outline": 983862,
+  "lighthouse": 985599,
+  "lighthouse-on": 985600,
+  "lightning-bolt": 988171,
+  "lightning-bolt-outline": 988172,
+  "lingerie": 988278,
+  "link": 983863,
+  "link-box": 986394,
+  "link-box-outline": 986395,
+  "link-box-variant": 986396,
+  "link-box-variant-outline": 986397,
+  "link-lock": 987322,
+  "link-off": 983864,
+  "link-plus": 986260,
+  "link-variant": 983865,
+  "link-variant-minus": 987391,
+  "link-variant-off": 983866,
+  "link-variant-plus": 987392,
+  "link-variant-remove": 987393,
+  "linkedin": 983867,
+  "linux": 983869,
+  "linux-mint": 985325,
+  "lipstick": 988085,
+  "litecoin": 985697,
+  "loading": 984946,
+  "location-enter": 987076,
+  "location-exit": 987077,
+  "lock": 983870,
+  "lock-alert": 985326,
+  "lock-check": 988058,
+  "lock-clock": 985471,
+  "lock-open": 983871,
+  "lock-open-alert": 988059,
+  "lock-open-check": 988060,
+  "lock-open-outline": 983872,
+  "lock-open-variant": 987078,
+  "lock-open-variant-outline": 987079,
+  "lock-outline": 983873,
+  "lock-pattern": 984810,
+  "lock-plus": 984571,
+  "lock-question": 985327,
+  "lock-reset": 984947,
+  "lock-smart": 985266,
+  "locker": 985047,
+  "locker-multiple": 985048,
+  "login": 983874,
+  "login-variant": 984572,
+  "logout": 983875,
+  "logout-variant": 984573,
+  "longitude": 986970,
+  "looks": 983876,
+  "loupe": 983877,
+  "lumx": 983878,
+  "lungs": 987268,
+  "magnet": 983879,
+  "magnet-on": 983880,
+  "magnify": 983881,
+  "magnify-close": 985472,
+  "magnify-minus": 983882,
+  "magnify-minus-cursor": 985698,
+  "magnify-minus-outline": 984812,
+  "magnify-plus": 983883,
+  "magnify-plus-cursor": 985699,
+  "magnify-plus-outline": 984813,
+  "magnify-remove-cursor": 987660,
+  "magnify-remove-outline": 987661,
+  "magnify-scan": 987766,
+  "mail": 986811,
+  "mailbox": 984814,
+  "mailbox-open": 986504,
+  "mailbox-open-outline": 986505,
+  "mailbox-open-up": 986506,
+  "mailbox-open-up-outline": 986507,
+  "mailbox-outline": 986508,
+  "mailbox-up": 986509,
+  "mailbox-up-outline": 986510,
+  "map": 983885,
+  "map-check": 986812,
+  "map-check-outline": 986813,
+  "map-clock": 986398,
+  "map-clock-outline": 986399,
+  "map-legend": 985601,
+  "map-marker": 983886,
+  "map-marker-alert": 986885,
+  "map-marker-alert-outline": 986886,
+  "map-marker-check": 986261,
+  "map-marker-check-outline": 987899,
+  "map-marker-circle": 983887,
+  "map-marker-distance": 985328,
+  "map-marker-down": 987394,
+  "map-marker-left": 987867,
+  "map-marker-left-outline": 987869,
+  "map-marker-minus": 984656,
+  "map-marker-minus-outline": 987897,
+  "map-marker-multiple": 983888,
+  "map-marker-multiple-outline": 987767,
+  "map-marker-off": 983889,
+  "map-marker-off-outline": 987901,
+  "map-marker-outline": 985049,
+  "map-marker-path": 986400,
+  "map-marker-plus": 984657,
+  "map-marker-plus-outline": 987896,
+  "map-marker-question": 986887,
+  "map-marker-question-outline": 986888,
+  "map-marker-radius": 983890,
+  "map-marker-radius-outline": 987900,
+  "map-marker-remove": 986889,
+  "map-marker-remove-outline": 987898,
+  "map-marker-remove-variant": 986890,
+  "map-marker-right": 987868,
+  "map-marker-right-outline": 987870,
+  "map-marker-up": 987395,
+  "map-minus": 985473,
+  "map-outline": 985474,
+  "map-plus": 985475,
+  "map-search": 985476,
+  "map-search-outline": 985477,
+  "mapbox": 986026,
+  "margin": 983891,
+  "marker": 984658,
+  "marker-cancel": 986585,
+  "marker-check": 983893,
+  "mastodon": 985809,
+  "material-design": 985478,
+  "material-ui": 983895,
+  "math-compass": 983896,
+  "math-cos": 986262,
+  "math-integral": 987080,
+  "math-integral-box": 987081,
+  "math-log": 987269,
+  "math-norm": 987082,
+  "math-norm-box": 987083,
+  "math-sin": 986263,
+  "math-tan": 986264,
+  "matrix": 984616,
+  "medal": 985479,
+  "medal-outline": 987942,
+  "medical-bag": 984815,
+  "meditation": 987515,
+  "memory": 983899,
+  "menu": 983900,
+  "menu-down": 983901,
+  "menu-down-outline": 984758,
+  "menu-left": 983902,
+  "menu-left-outline": 985602,
+  "menu-open": 986027,
+  "menu-right": 983903,
+  "menu-right-outline": 985603,
+  "menu-swap": 985700,
+  "menu-swap-outline": 985701,
+  "menu-up": 983904,
+  "menu-up-outline": 984759,
+  "merge": 986972,
+  "message": 983905,
+  "message-alert": 983906,
+  "message-alert-outline": 985604,
+  "message-arrow-left": 987890,
+  "message-arrow-left-outline": 987891,
+  "message-arrow-right": 987892,
+  "message-arrow-right-outline": 987893,
+  "message-bulleted": 984738,
+  "message-bulleted-off": 984739,
+  "message-cog": 984817,
+  "message-cog-outline": 987506,
+  "message-draw": 983907,
+  "message-image": 983908,
+  "message-image-outline": 987500,
+  "message-lock": 987084,
+  "message-lock-outline": 987501,
+  "message-minus": 987502,
+  "message-minus-outline": 987503,
+  "message-outline": 983909,
+  "message-plus": 984659,
+  "message-plus-outline": 987323,
+  "message-processing": 983910,
+  "message-processing-outline": 987504,
+  "message-reply": 983911,
+  "message-reply-text": 983912,
+  "message-settings": 984816,
+  "message-settings-outline": 987505,
+  "message-text": 983913,
+  "message-text-clock": 987507,
+  "message-text-clock-outline": 987508,
+  "message-text-lock": 987085,
+  "message-text-lock-outline": 987509,
+  "message-text-outline": 983914,
+  "message-video": 983915,
+  "meteor": 984617,
+  "metronome": 985050,
+  "metronome-tick": 985051,
+  "micro-sd": 985052,
+  "microphone": 983916,
+  "microphone-minus": 985267,
+  "microphone-off": 983917,
+  "microphone-outline": 983918,
+  "microphone-plus": 985268,
+  "microphone-settings": 983919,
+  "microphone-variant": 983920,
+  "microphone-variant-off": 983921,
+  "microscope": 984660,
+  "microsoft": 983922,
+  "microsoft-access": 988046,
+  "microsoft-azure": 985093,
+  "microsoft-azure-devops": 987093,
+  "microsoft-bing": 983204,
+  "microsoft-dynamics-365": 985480,
+  "microsoft-edge": 983529,
+  "microsoft-edge-legacy": 987728,
+  "microsoft-excel": 988047,
+  "microsoft-internet-explorer": 983808,
+  "microsoft-office": 984006,
+  "microsoft-onedrive": 984010,
+  "microsoft-onenote": 984903,
+  "microsoft-outlook": 986402,
+  "microsoft-powerpoint": 988048,
+  "microsoft-sharepoint": 988049,
+  "microsoft-teams": 983739,
+  "microsoft-visual-studio": 984592,
+  "microsoft-visual-studio-code": 985630,
+  "microsoft-windows": 984499,
+  "microsoft-windows-classic": 985633,
+  "microsoft-word": 988050,
+  "microsoft-xbox": 984505,
+  "microsoft-xbox-controller": 984506,
+  "microsoft-xbox-controller-battery-alert": 984907,
+  "microsoft-xbox-controller-battery-charging": 985634,
+  "microsoft-xbox-controller-battery-empty": 984908,
+  "microsoft-xbox-controller-battery-full": 984909,
+  "microsoft-xbox-controller-battery-low": 984910,
+  "microsoft-xbox-controller-battery-medium": 984911,
+  "microsoft-xbox-controller-battery-unknown": 984912,
+  "microsoft-xbox-controller-menu": 986735,
+  "microsoft-xbox-controller-off": 984507,
+  "microsoft-xbox-controller-view": 986736,
+  "microsoft-yammer": 984969,
+  "microwave": 986265,
+  "microwave-off": 988195,
+  "middleware": 986973,
+  "middleware-outline": 986974,
+  "midi": 985329,
+  "midi-port": 985330,
+  "mine": 986586,
+  "minecraft": 983923,
+  "mini-sd": 985605,
+  "minidisc": 985606,
+  "minus": 983924,
+  "minus-box": 983925,
+  "minus-box-multiple": 987457,
+  "minus-box-multiple-outline": 987458,
+  "minus-box-outline": 984818,
+  "minus-circle": 983926,
+  "minus-circle-multiple": 983898,
+  "minus-circle-multiple-outline": 985811,
+  "minus-circle-off": 988249,
+  "minus-circle-off-outline": 988250,
+  "minus-circle-outline": 983927,
+  "minus-network": 983928,
+  "minus-network-outline": 986266,
+  "mirror": 987645,
+  "mixed-martial-arts": 986511,
+  "mixed-reality": 985215,
+  "mixer": 985053,
+  "molecule": 986028,
+  "molecule-co": 987902,
+  "molecule-co2": 985060,
+  "monitor": 983929,
+  "monitor-cellphone": 985481,
+  "monitor-cellphone-star": 985482,
+  "monitor-clean": 987396,
+  "monitor-dashboard": 985607,
+  "monitor-edit": 987846,
+  "monitor-eye": 988084,
+  "monitor-lock": 986587,
+  "monitor-multiple": 983930,
+  "monitor-off": 986512,
+  "monitor-screenshot": 986705,
+  "monitor-share": 988291,
+  "monitor-speaker": 986975,
+  "monitor-speaker-off": 986976,
+  "monitor-star": 986588,
+  "moon-first-quarter": 986977,
+  "moon-full": 986978,
+  "moon-last-quarter": 986979,
+  "moon-new": 986980,
+  "moon-waning-crescent": 986981,
+  "moon-waning-gibbous": 986982,
+  "moon-waxing-crescent": 986983,
+  "moon-waxing-gibbous": 986984,
+  "moped": 987270,
+  "more": 983931,
+  "mother-heart": 987924,
+  "mother-nurse": 986401,
+  "motion-sensor": 986513,
+  "motion-sensor-off": 988213,
+  "motorbike": 983932,
+  "mouse": 983933,
+  "mouse-bluetooth": 985483,
+  "mouse-off": 983934,
+  "mouse-variant": 983935,
+  "mouse-variant-off": 983936,
+  "move-resize": 984661,
+  "move-resize-variant": 984662,
+  "movie": 983937,
+  "movie-edit": 987426,
+  "movie-edit-outline": 987427,
+  "movie-filter": 987428,
+  "movie-filter-outline": 987429,
+  "movie-open": 987086,
+  "movie-open-outline": 987087,
+  "movie-outline": 986589,
+  "movie-roll": 985054,
+  "movie-search": 987602,
+  "movie-search-outline": 987603,
+  "muffin": 985484,
+  "multiplication": 983938,
+  "multiplication-box": 983939,
+  "mushroom": 985055,
+  "mushroom-off": 988154,
+  "mushroom-off-outline": 988155,
+  "mushroom-outline": 985056,
+  "music": 984922,
+  "music-accidental-double-flat": 986985,
+  "music-accidental-double-sharp": 986986,
+  "music-accidental-flat": 986987,
+  "music-accidental-natural": 986988,
+  "music-accidental-sharp": 986989,
+  "music-box": 983940,
+  "music-box-multiple": 983859,
+  "music-box-multiple-outline": 986884,
+  "music-box-outline": 983941,
+  "music-circle": 983942,
+  "music-circle-outline": 985812,
+  "music-clef-alto": 986990,
+  "music-clef-bass": 986991,
+  "music-clef-treble": 986992,
+  "music-note": 983943,
+  "music-note-bluetooth": 984574,
+  "music-note-bluetooth-off": 984575,
+  "music-note-eighth": 983944,
+  "music-note-eighth-dotted": 986993,
+  "music-note-half": 983945,
+  "music-note-half-dotted": 986994,
+  "music-note-off": 983946,
+  "music-note-off-outline": 986995,
+  "music-note-outline": 986996,
+  "music-note-plus": 986590,
+  "music-note-quarter": 983947,
+  "music-note-quarter-dotted": 986997,
+  "music-note-sixteenth": 983948,
+  "music-note-sixteenth-dotted": 986998,
+  "music-note-whole": 983949,
+  "music-note-whole-dotted": 986999,
+  "music-off": 984923,
+  "music-rest-eighth": 987000,
+  "music-rest-half": 987001,
+  "music-rest-quarter": 987002,
+  "music-rest-sixteenth": 987003,
+  "music-rest-whole": 987004,
+  "nail": 986591,
+  "nas": 985331,
+  "nativescript": 985216,
+  "nature": 983950,
+  "nature-people": 983951,
+  "navigation": 983952,
+  "near-me": 984525,
+  "necklace": 986891,
+  "needle": 983953,
+  "netflix": 984902,
+  "network": 984819,
+  "network-off": 986267,
+  "network-off-outline": 986268,
+  "network-outline": 986269,
+  "network-strength-1": 985332,
+  "network-strength-1-alert": 985333,
+  "network-strength-2": 985334,
+  "network-strength-2-alert": 985335,
+  "network-strength-3": 985336,
+  "network-strength-3-alert": 985337,
+  "network-strength-4": 985338,
+  "network-strength-4-alert": 985339,
+  "network-strength-off": 985340,
+  "network-strength-off-outline": 985341,
+  "network-strength-outline": 985342,
+  "new-box": 983956,
+  "newspaper": 983957,
+  "newspaper-minus": 986892,
+  "newspaper-plus": 986893,
+  "newspaper-variant": 987137,
+  "newspaper-variant-multiple": 987138,
+  "newspaper-variant-multiple-outline": 987139,
+  "newspaper-variant-outline": 987140,
+  "nfc": 983958,
+  "nfc-search-variant": 986707,
+  "nfc-tap": 983959,
+  "nfc-variant": 983960,
+  "nfc-variant-off": 986708,
+  "ninja": 984948,
+  "nintendo-game-boy": 988051,
+  "nintendo-switch": 985057,
+  "nintendo-wii": 984491,
+  "nintendo-wiiu": 984877,
+  "nix": 987397,
+  "nodejs": 983961,
+  "noodles": 987518,
+  "not-equal": 985485,
+  "not-equal-variant": 985486,
+  "note": 983962,
+  "note-multiple": 984760,
+  "note-multiple-outline": 984761,
+  "note-outline": 983963,
+  "note-plus": 983964,
+  "note-plus-outline": 983965,
+  "note-text": 983966,
+  "note-text-outline": 987607,
+  "notebook": 985134,
+  "notebook-multiple": 986709,
+  "notebook-outline": 986815,
+  "notification-clear-all": 983967,
+  "npm": 984823,
+  "nuke": 984740,
+  "null": 985058,
+  "numeric": 983968,
+  "numeric-0": 985913,
+  "numeric-0-box": 983969,
+  "numeric-0-box-multiple": 986894,
+  "numeric-0-box-multiple-outline": 983970,
+  "numeric-0-box-outline": 983971,
+  "numeric-0-circle": 986270,
+  "numeric-0-circle-outline": 986271,
+  "numeric-1": 985914,
+  "numeric-1-box": 983972,
+  "numeric-1-box-multiple": 986895,
+  "numeric-1-box-multiple-outline": 983973,
+  "numeric-1-box-outline": 983974,
+  "numeric-1-circle": 986272,
+  "numeric-1-circle-outline": 986273,
+  "numeric-10": 987113,
+  "numeric-10-box": 987005,
+  "numeric-10-box-multiple": 987114,
+  "numeric-10-box-multiple-outline": 987115,
+  "numeric-10-box-outline": 987006,
+  "numeric-10-circle": 987116,
+  "numeric-10-circle-outline": 987117,
+  "numeric-2": 985915,
+  "numeric-2-box": 983975,
+  "numeric-2-box-multiple": 986896,
+  "numeric-2-box-multiple-outline": 983976,
+  "numeric-2-box-outline": 983977,
+  "numeric-2-circle": 986274,
+  "numeric-2-circle-outline": 986275,
+  "numeric-3": 985916,
+  "numeric-3-box": 983978,
+  "numeric-3-box-multiple": 986897,
+  "numeric-3-box-multiple-outline": 983979,
+  "numeric-3-box-outline": 983980,
+  "numeric-3-circle": 986276,
+  "numeric-3-circle-outline": 986277,
+  "numeric-4": 985917,
+  "numeric-4-box": 983981,
+  "numeric-4-box-multiple": 986898,
+  "numeric-4-box-multiple-outline": 983986,
+  "numeric-4-box-outline": 983982,
+  "numeric-4-circle": 986278,
+  "numeric-4-circle-outline": 986279,
+  "numeric-5": 985918,
+  "numeric-5-box": 983985,
+  "numeric-5-box-multiple": 986899,
+  "numeric-5-box-multiple-outline": 983983,
+  "numeric-5-box-outline": 983984,
+  "numeric-5-circle": 986280,
+  "numeric-5-circle-outline": 986281,
+  "numeric-6": 985919,
+  "numeric-6-box": 983987,
+  "numeric-6-box-multiple": 986900,
+  "numeric-6-box-multiple-outline": 983988,
+  "numeric-6-box-outline": 983989,
+  "numeric-6-circle": 986282,
+  "numeric-6-circle-outline": 986283,
+  "numeric-7": 985920,
+  "numeric-7-box": 983990,
+  "numeric-7-box-multiple": 986901,
+  "numeric-7-box-multiple-outline": 983991,
+  "numeric-7-box-outline": 983992,
+  "numeric-7-circle": 986284,
+  "numeric-7-circle-outline": 986285,
+  "numeric-8": 985921,
+  "numeric-8-box": 983993,
+  "numeric-8-box-multiple": 986902,
+  "numeric-8-box-multiple-outline": 983994,
+  "numeric-8-box-outline": 983995,
+  "numeric-8-circle": 986286,
+  "numeric-8-circle-outline": 986287,
+  "numeric-9": 985922,
+  "numeric-9-box": 983996,
+  "numeric-9-box-multiple": 986903,
+  "numeric-9-box-multiple-outline": 983997,
+  "numeric-9-box-outline": 983998,
+  "numeric-9-circle": 986288,
+  "numeric-9-circle-outline": 986289,
+  "numeric-9-plus": 987118,
+  "numeric-9-plus-box": 983999,
+  "numeric-9-plus-box-multiple": 986904,
+  "numeric-9-plus-box-multiple-outline": 984000,
+  "numeric-9-plus-box-outline": 984001,
+  "numeric-9-plus-circle": 986290,
+  "numeric-9-plus-circle-outline": 986291,
+  "numeric-negative-1": 987218,
+  "nut": 984824,
+  "nutrition": 984002,
+  "nuxt": 987398,
+  "oar": 984700,
+  "ocarina": 986592,
+  "oci": 987881,
+  "ocr": 987450,
+  "octagon": 984003,
+  "octagon-outline": 984004,
+  "octagram": 984825,
+  "octagram-outline": 984949,
+  "odnoklassniki": 984005,
+  "offer": 987675,
+  "office-building": 985489,
+  "oil": 984007,
+  "oil-lamp": 986905,
+  "oil-level": 987219,
+  "oil-temperature": 987128,
+  "omega": 984009,
+  "one-up": 986029,
+  "onepassword": 985217,
+  "opacity": 984524,
+  "open-in-app": 984011,
+  "open-in-new": 984012,
+  "open-source-initiative": 986030,
+  "openid": 984013,
+  "opera": 984014,
+  "orbit": 983064,
+  "order-alphabetical-ascending": 983565,
+  "order-alphabetical-descending": 986375,
+  "order-bool-ascending": 983742,
+  "order-bool-ascending-variant": 985487,
+  "order-bool-descending": 988036,
+  "order-bool-descending-variant": 985488,
+  "order-numeric-ascending": 984389,
+  "order-numeric-descending": 984390,
+  "origin": 985923,
+  "ornament": 984015,
+  "ornament-variant": 984016,
+  "outdoor-lamp": 987220,
+  "overscan": 987141,
+  "owl": 984018,
+  "pac-man": 986031,
+  "package": 984019,
+  "package-down": 984020,
+  "package-up": 984021,
+  "package-variant": 984022,
+  "package-variant-closed": 984023,
+  "page-first": 984576,
+  "page-last": 984577,
+  "page-layout-body": 984826,
+  "page-layout-footer": 984827,
+  "page-layout-header": 984828,
+  "page-layout-header-footer": 987007,
+  "page-layout-sidebar-left": 984829,
+  "page-layout-sidebar-right": 984830,
+  "page-next": 986032,
+  "page-next-outline": 986033,
+  "page-previous": 986034,
+  "page-previous-outline": 986035,
+  "pail": 988183,
+  "pail-minus": 988215,
+  "pail-minus-outline": 988220,
+  "pail-off": 988217,
+  "pail-off-outline": 988222,
+  "pail-outline": 988218,
+  "pail-plus": 988214,
+  "pail-plus-outline": 988219,
+  "pail-remove": 988216,
+  "pail-remove-outline": 988221,
+  "palette": 984024,
+  "palette-advanced": 984025,
+  "palette-outline": 986636,
+  "palette-swatch": 985269,
+  "palette-swatch-outline": 987996,
+  "palm-tree": 987221,
+  "pan": 986036,
+  "pan-bottom-left": 986037,
+  "pan-bottom-right": 986038,
+  "pan-down": 986039,
+  "pan-horizontal": 986040,
+  "pan-left": 986041,
+  "pan-right": 986042,
+  "pan-top-left": 986043,
+  "pan-top-right": 986044,
+  "pan-up": 986045,
+  "pan-vertical": 986046,
+  "panda": 984026,
+  "pandora": 984027,
+  "panorama": 984028,
+  "panorama-fisheye": 984029,
+  "panorama-horizontal": 984030,
+  "panorama-vertical": 984031,
+  "panorama-wide-angle": 984032,
+  "paper-cut-vertical": 984033,
+  "paper-roll": 987479,
+  "paper-roll-outline": 987480,
+  "paperclip": 984034,
+  "parachute": 986292,
+  "parachute-outline": 986293,
+  "parking": 984035,
+  "party-popper": 987222,
+  "passport": 985059,
+  "passport-biometric": 986593,
+  "pasta": 987488,
+  "patio-heater": 987008,
+  "patreon": 985218,
+  "pause": 984036,
+  "pause-circle": 984037,
+  "pause-circle-outline": 984038,
+  "pause-octagon": 984039,
+  "pause-octagon-outline": 984040,
+  "paw": 984041,
+  "paw-off": 984663,
+  "pdf-box": 986710,
+  "peace": 985220,
+  "peanut": 987132,
+  "peanut-off": 987133,
+  "peanut-off-outline": 987135,
+  "peanut-outline": 987134,
+  "pen": 984042,
+  "pen-lock": 986594,
+  "pen-minus": 986595,
+  "pen-off": 986596,
+  "pen-plus": 986597,
+  "pen-remove": 986598,
+  "pencil": 984043,
+  "pencil-box": 984044,
+  "pencil-box-multiple": 987460,
+  "pencil-box-multiple-outline": 987461,
+  "pencil-box-outline": 984045,
+  "pencil-circle": 984831,
+  "pencil-circle-outline": 984950,
+  "pencil-lock": 984046,
+  "pencil-lock-outline": 986599,
+  "pencil-minus": 986600,
+  "pencil-minus-outline": 986601,
+  "pencil-off": 984047,
+  "pencil-off-outline": 986602,
+  "pencil-outline": 986294,
+  "pencil-plus": 986603,
+  "pencil-plus-outline": 986604,
+  "pencil-remove": 986605,
+  "pencil-remove-outline": 986606,
+  "pencil-ruler": 987987,
+  "penguin": 986816,
+  "pentagon": 984833,
+  "pentagon-outline": 984832,
+  "percent": 984048,
+  "percent-outline": 987768,
+  "periodic-table": 985270,
+  "perspective-less": 986403,
+  "perspective-more": 986404,
+  "pharmacy": 984049,
+  "phone": 984050,
+  "phone-alert": 986906,
+  "phone-alert-outline": 987534,
+  "phone-bluetooth": 984051,
+  "phone-bluetooth-outline": 987535,
+  "phone-cancel": 987324,
+  "phone-cancel-outline": 987536,
+  "phone-check": 987561,
+  "phone-check-outline": 987562,
+  "phone-classic": 984578,
+  "phone-classic-off": 987769,
+  "phone-forward": 984052,
+  "phone-forward-outline": 987537,
+  "phone-hangup": 984053,
+  "phone-hangup-outline": 987538,
+  "phone-in-talk": 984054,
+  "phone-in-talk-outline": 987522,
+  "phone-incoming": 984055,
+  "phone-incoming-outline": 987539,
+  "phone-lock": 984056,
+  "phone-lock-outline": 987540,
+  "phone-log": 984057,
+  "phone-log-outline": 987541,
+  "phone-message": 987542,
+  "phone-message-outline": 987543,
+  "phone-minus": 984664,
+  "phone-minus-outline": 987544,
+  "phone-missed": 984058,
+  "phone-missed-outline": 987557,
+  "phone-off": 986607,
+  "phone-off-outline": 987558,
+  "phone-outgoing": 984059,
+  "phone-outgoing-outline": 987545,
+  "phone-outline": 986608,
+  "phone-paused": 984060,
+  "phone-paused-outline": 987546,
+  "phone-plus": 984665,
+  "phone-plus-outline": 987547,
+  "phone-return": 985135,
+  "phone-return-outline": 987548,
+  "phone-ring": 987563,
+  "phone-ring-outline": 987564,
+  "phone-rotate-landscape": 985221,
+  "phone-rotate-portrait": 985222,
+  "phone-settings": 984061,
+  "phone-settings-outline": 987549,
+  "phone-voip": 984062,
+  "pi": 984063,
+  "pi-box": 984064,
+  "pi-hole": 986609,
+  "piano": 984701,
+  "pickaxe": 985271,
+  "picture-in-picture-bottom-right": 986711,
+  "picture-in-picture-bottom-right-outline": 986712,
+  "picture-in-picture-top-right": 986713,
+  "picture-in-picture-top-right-outline": 986714,
+  "pier": 985223,
+  "pier-crane": 985224,
+  "pig": 984065,
+  "pig-variant": 987142,
+  "piggy-bank": 987143,
+  "pill": 984066,
+  "pillar": 984834,
+  "pin": 984067,
+  "pin-off": 984068,
+  "pin-off-outline": 985392,
+  "pin-outline": 985393,
+  "pine-tree": 984069,
+  "pine-tree-box": 984070,
+  "pine-tree-fire": 988186,
+  "pinterest": 984071,
+  "pinwheel": 985813,
+  "pinwheel-outline": 985814,
+  "pipe": 985061,
+  "pipe-disconnected": 985062,
+  "pipe-leak": 985225,
+  "pipe-wrench": 987988,
+  "pirate": 985608,
+  "pistol": 984835,
+  "piston": 985226,
+  "pizza": 984073,
+  "play": 984074,
+  "play-box": 987770,
+  "play-box-multiple": 986393,
+  "play-box-multiple-outline": 988134,
+  "play-box-outline": 984075,
+  "play-circle": 984076,
+  "play-circle-outline": 984077,
+  "play-network": 985227,
+  "play-network-outline": 986295,
+  "play-outline": 986907,
+  "play-pause": 984078,
+  "play-protected-content": 984079,
+  "play-speed": 985343,
+  "playlist-check": 984519,
+  "playlist-edit": 985344,
+  "playlist-minus": 984080,
+  "playlist-music": 986296,
+  "playlist-music-outline": 986297,
+  "playlist-play": 984081,
+  "playlist-plus": 984082,
+  "playlist-remove": 984083,
+  "playlist-star": 986610,
+  "plex": 984762,
+  "plus": 984085,
+  "plus-box": 984086,
+  "plus-box-multiple": 983860,
+  "plus-box-multiple-outline": 987459,
+  "plus-box-outline": 984836,
+  "plus-circle": 984087,
+  "plus-circle-multiple": 983884,
+  "plus-circle-multiple-outline": 984088,
+  "plus-circle-outline": 984089,
+  "plus-minus": 985490,
+  "plus-minus-box": 985491,
+  "plus-minus-variant": 988361,
+  "plus-network": 984090,
+  "plus-network-outline": 986298,
+  "plus-one": 984091,
+  "plus-outline": 984837,
+  "plus-thick": 987628,
+  "podcast": 985492,
+  "podium": 986405,
+  "podium-bronze": 986406,
+  "podium-gold": 986407,
+  "podium-silver": 986408,
+  "point-of-sale": 986514,
+  "pokeball": 984093,
+  "pokemon-go": 985609,
+  "poker-chip": 985136,
+  "polaroid": 984094,
+  "police-badge": 987495,
+  "police-badge-outline": 987496,
+  "poll": 984095,
+  "poll-box": 984096,
+  "poll-box-outline": 987771,
+  "polo": 988355,
+  "polymer": 984097,
+  "pool": 984582,
+  "popcorn": 984098,
+  "post": 987144,
+  "post-outline": 987145,
+  "postage-stamp": 986299,
+  "pot": 983781,
+  "pot-mix": 984667,
+  "pot-mix-outline": 984695,
+  "pot-outline": 983807,
+  "pot-steam": 984666,
+  "pot-steam-outline": 983846,
+  "pound": 984099,
+  "pound-box": 984100,
+  "pound-box-outline": 987519,
+  "power": 984101,
+  "power-cycle": 985345,
+  "power-off": 985346,
+  "power-on": 985347,
+  "power-plug": 984741,
+  "power-plug-off": 984742,
+  "power-plug-off-outline": 988196,
+  "power-plug-outline": 988197,
+  "power-settings": 984102,
+  "power-sleep": 985348,
+  "power-socket": 984103,
+  "power-socket-au": 985349,
+  "power-socket-de": 987399,
+  "power-socket-eu": 985063,
+  "power-socket-fr": 987400,
+  "power-socket-jp": 987401,
+  "power-socket-uk": 985064,
+  "power-socket-us": 985065,
+  "power-standby": 985350,
+  "powershell": 985610,
+  "prescription": 984838,
+  "presentation": 984104,
+  "presentation-play": 984105,
+  "printer": 984106,
+  "printer-3d": 984107,
+  "printer-3d-nozzle": 986715,
+  "printer-3d-nozzle-alert": 987584,
+  "printer-3d-nozzle-alert-outline": 987585,
+  "printer-3d-nozzle-outline": 986716,
+  "printer-alert": 984108,
+  "printer-check": 987462,
+  "printer-eye": 988248,
+  "printer-off": 986717,
+  "printer-pos": 987223,
+  "printer-search": 988247,
+  "printer-settings": 984839,
+  "printer-wireless": 985611,
+  "priority-high": 984579,
+  "priority-low": 984580,
+  "professional-hexagon": 984109,
+  "progress-alert": 986300,
+  "progress-check": 985493,
+  "progress-clock": 985494,
+  "progress-close": 987402,
+  "progress-download": 985495,
+  "progress-upload": 985496,
+  "progress-wrench": 986301,
+  "projector": 984110,
+  "projector-screen": 984111,
+  "propane-tank": 987991,
+  "propane-tank-outline": 987992,
+  "protocol": 987096,
+  "publish": 984743,
+  "pulse": 984112,
+  "pump": 988162,
+  "pumpkin": 986047,
+  "purse": 986908,
+  "purse-outline": 986909,
+  "puzzle": 984113,
+  "puzzle-check": 988198,
+  "puzzle-check-outline": 988199,
+  "puzzle-edit": 988371,
+  "puzzle-edit-outline": 988377,
+  "puzzle-heart": 988372,
+  "puzzle-heart-outline": 988378,
+  "puzzle-minus": 988369,
+  "puzzle-minus-outline": 988375,
+  "puzzle-outline": 985702,
+  "puzzle-plus": 988368,
+  "puzzle-plus-outline": 988374,
+  "puzzle-remove": 988370,
+  "puzzle-remove-outline": 988376,
+  "puzzle-star": 988373,
+  "puzzle-star-outline": 988379,
+  "qi": 985497,
+  "qqchat": 984581,
+  "qrcode": 984114,
+  "qrcode-edit": 985272,
+  "qrcode-minus": 987532,
+  "qrcode-plus": 987531,
+  "qrcode-remove": 987533,
+  "qrcode-scan": 984115,
+  "quadcopter": 984116,
+  "quality-high": 984117,
+  "quality-low": 985612,
+  "quality-medium": 985613,
+  "quora": 986409,
+  "rabbit": 985351,
+  "racing-helmet": 986515,
+  "racquetball": 986516,
+  "radar": 984119,
+  "radiator": 984120,
+  "radiator-disabled": 985815,
+  "radiator-off": 985816,
+  "radio": 984121,
+  "radio-am": 986302,
+  "radio-fm": 986303,
+  "radio-handheld": 984122,
+  "radio-off": 987676,
+  "radio-tower": 984123,
+  "radioactive": 984124,
+  "radioactive-off": 986817,
+  "radiobox-blank": 984125,
+  "radiobox-marked": 984126,
+  "radiology-box": 988357,
+  "radiology-box-outline": 988358,
+  "radius": 986304,
+  "radius-outline": 986305,
+  "railroad-light": 986910,
+  "raspberry-pi": 984127,
+  "ray-end": 984128,
+  "ray-end-arrow": 984129,
+  "ray-start": 984130,
+  "ray-start-arrow": 984131,
+  "ray-start-end": 984132,
+  "ray-vertex": 984133,
+  "react": 984840,
+  "read": 984135,
+  "receipt": 984137,
+  "record": 984138,
+  "record-circle": 986818,
+  "record-circle-outline": 986819,
+  "record-player": 985498,
+  "record-rec": 984139,
+  "rectangle": 986718,
+  "rectangle-outline": 986719,
+  "recycle": 984140,
+  "recycle-variant": 988061,
+  "reddit": 984141,
+  "redhat": 987419,
+  "redo": 984142,
+  "redo-variant": 984143,
+  "reflect-horizontal": 985614,
+  "reflect-vertical": 985615,
+  "refresh": 984144,
+  "refresh-circle": 988023,
+  "regex": 984145,
+  "registered-trademark": 985703,
+  "relation-many-to-many": 988310,
+  "relation-many-to-one": 988311,
+  "relation-many-to-one-or-many": 988312,
+  "relation-many-to-only-one": 988313,
+  "relation-many-to-zero-or-many": 988314,
+  "relation-many-to-zero-or-one": 988315,
+  "relation-one-or-many-to-many": 988316,
+  "relation-one-or-many-to-one": 988317,
+  "relation-one-or-many-to-one-or-many": 988318,
+  "relation-one-or-many-to-only-one": 988319,
+  "relation-one-or-many-to-zero-or-many": 988320,
+  "relation-one-or-many-to-zero-or-one": 988321,
+  "relation-one-to-many": 988322,
+  "relation-one-to-one": 988323,
+  "relation-one-to-one-or-many": 988324,
+  "relation-one-to-only-one": 988325,
+  "relation-one-to-zero-or-many": 988326,
+  "relation-one-to-zero-or-one": 988327,
+  "relation-only-one-to-many": 988328,
+  "relation-only-one-to-one": 988329,
+  "relation-only-one-to-one-or-many": 988330,
+  "relation-only-one-to-only-one": 988331,
+  "relation-only-one-to-zero-or-many": 988332,
+  "relation-only-one-to-zero-or-one": 988333,
+  "relation-zero-or-many-to-many": 988334,
+  "relation-zero-or-many-to-one": 988335,
+  "relation-zero-or-many-to-one-or-many": 988336,
+  "relation-zero-or-many-to-only-one": 988337,
+  "relation-zero-or-many-to-zero-or-many": 988338,
+  "relation-zero-or-many-to-zero-or-one": 988339,
+  "relation-zero-or-one-to-many": 988340,
+  "relation-zero-or-one-to-one": 988341,
+  "relation-zero-or-one-to-one-or-many": 988342,
+  "relation-zero-or-one-to-only-one": 988343,
+  "relation-zero-or-one-to-zero-or-many": 988344,
+  "relation-zero-or-one-to-zero-or-one": 988345,
+  "relative-scale": 984146,
+  "reload": 984147,
+  "reload-alert": 987403,
+  "reminder": 985228,
+  "remote": 984148,
+  "remote-desktop": 985273,
+  "remote-off": 986820,
+  "remote-tv": 986821,
+  "remote-tv-off": 986822,
+  "rename-box": 984149,
+  "reorder-horizontal": 984712,
+  "reorder-vertical": 984713,
+  "repeat": 984150,
+  "repeat-off": 984151,
+  "repeat-once": 984152,
+  "replay": 984153,
+  "reply": 984154,
+  "reply-all": 984155,
+  "reply-all-outline": 986911,
+  "reply-circle": 987566,
+  "reply-outline": 986912,
+  "reproduction": 984156,
+  "resistor": 985924,
+  "resistor-nodes": 985925,
+  "resize": 985704,
+  "resize-bottom-right": 984157,
+  "responsive": 984158,
+  "restart": 984841,
+  "restart-alert": 987404,
+  "restart-off": 986517,
+  "restore": 985499,
+  "restore-alert": 987405,
+  "rewind": 984159,
+  "rewind-10": 986410,
+  "rewind-30": 986518,
+  "rewind-5": 987641,
+  "rewind-outline": 984842,
+  "rhombus": 984843,
+  "rhombus-medium": 985616,
+  "rhombus-medium-outline": 988380,
+  "rhombus-outline": 984844,
+  "rhombus-split": 985617,
+  "rhombus-split-outline": 988381,
+  "ribbon": 984160,
+  "rice": 985066,
+  "ring": 985067,
+  "rivet": 986720,
+  "road": 984161,
+  "road-variant": 984162,
+  "robber": 987224,
+  "robot": 984745,
+  "robot-industrial": 985926,
+  "robot-mower": 987639,
+  "robot-mower-outline": 987635,
+  "robot-vacuum": 984845,
+  "robot-vacuum-variant": 985352,
+  "rocket": 984163,
+  "rocket-launch": 988382,
+  "rocket-launch-outline": 988383,
+  "rocket-outline": 988079,
+  "rodent": 987943,
+  "roller-skate": 986411,
+  "roller-skate-off": 983365,
+  "rollerblade": 986412,
+  "rollerblade-off": 983086,
+  "rollupjs": 986048,
+  "roman-numeral-1": 987272,
+  "roman-numeral-10": 987281,
+  "roman-numeral-2": 987273,
+  "roman-numeral-3": 987274,
+  "roman-numeral-4": 987275,
+  "roman-numeral-5": 987276,
+  "roman-numeral-6": 987277,
+  "roman-numeral-7": 987278,
+  "roman-numeral-8": 987279,
+  "roman-numeral-9": 987280,
+  "room-service": 985229,
+  "room-service-outline": 986519,
+  "rotate-3d": 986823,
+  "rotate-3d-variant": 984164,
+  "rotate-left": 984165,
+  "rotate-left-variant": 984166,
+  "rotate-orbit": 986520,
+  "rotate-right": 984167,
+  "rotate-right-variant": 984168,
+  "rounded-corner": 984583,
+  "router": 987618,
+  "router-network": 987271,
+  "router-wireless": 984169,
+  "router-wireless-settings": 985705,
+  "routes": 984170,
+  "routes-clock": 987225,
+  "rowing": 984584,
+  "rss": 984171,
+  "rss-box": 984172,
+  "rss-off": 986913,
+  "rug": 988277,
+  "rugby": 986521,
+  "ruler": 984173,
+  "ruler-square": 986306,
+  "ruler-square-compass": 986814,
+  "run": 984846,
+  "run-fast": 984174,
+  "rv-truck": 987604,
+  "sack": 986414,
+  "sack-percent": 986415,
+  "safe": 985706,
+  "safe-square": 987772,
+  "safe-square-outline": 987773,
+  "safety-goggles": 986416,
+  "sail-boat": 986824,
+  "sale": 984175,
+  "salesforce": 985230,
+  "sass": 985068,
+  "satellite": 984176,
+  "satellite-uplink": 985353,
+  "satellite-variant": 984177,
+  "sausage": 985274,
+  "saw-blade": 986721,
+  "sawtooth-wave": 988282,
+  "saxophone": 984585,
+  "scale": 984178,
+  "scale-balance": 984529,
+  "scale-bathroom": 984179,
+  "scale-off": 987226,
+  "scan-helper": 988120,
+  "scanner": 984747,
+  "scanner-off": 985354,
+  "scatter-plot": 986825,
+  "scatter-plot-outline": 986826,
+  "school": 984180,
+  "school-outline": 987520,
+  "scissors-cutting": 985707,
+  "scooter": 987625,
+  "scoreboard": 987774,
+  "scoreboard-outline": 987775,
+  "screen-rotation": 984181,
+  "screen-rotation-lock": 984184,
+  "screw-flat-top": 986611,
+  "screw-lag": 986612,
+  "screw-machine-flat-top": 986613,
+  "screw-machine-round-top": 986614,
+  "screw-round-top": 986615,
+  "screwdriver": 984182,
+  "script": 986049,
+  "script-outline": 984183,
+  "script-text": 986050,
+  "script-text-outline": 986051,
+  "sd": 984185,
+  "seal": 984186,
+  "seal-variant": 987097,
+  "search-web": 984847,
+  "seat": 986307,
+  "seat-flat": 984187,
+  "seat-flat-angled": 984188,
+  "seat-individual-suite": 984189,
+  "seat-legroom-extra": 984190,
+  "seat-legroom-normal": 984191,
+  "seat-legroom-reduced": 984192,
+  "seat-outline": 986308,
+  "seat-passenger": 987721,
+  "seat-recline-extra": 984193,
+  "seat-recline-normal": 984194,
+  "seatbelt": 986309,
+  "security": 984195,
+  "security-network": 984196,
+  "seed": 986722,
+  "seed-off": 988157,
+  "seed-off-outline": 988158,
+  "seed-outline": 986723,
+  "segment": 986827,
+  "select": 984197,
+  "select-all": 984198,
+  "select-color": 986417,
+  "select-compare": 985817,
+  "select-drag": 985708,
+  "select-group": 987010,
+  "select-inverse": 984199,
+  "select-marker": 987776,
+  "select-multiple": 987777,
+  "select-multiple-marker": 987778,
+  "select-off": 984200,
+  "select-place": 987098,
+  "select-search": 987652,
+  "selection": 984201,
+  "selection-drag": 985709,
+  "selection-ellipse": 986418,
+  "selection-ellipse-arrow-inside": 986914,
+  "selection-marker": 987779,
+  "selection-multiple": 987781,
+  "selection-multiple-marker": 987780,
+  "selection-off": 984951,
+  "selection-search": 987653,
+  "semantic-web": 987926,
+  "send": 984202,
+  "send-check": 987489,
+  "send-check-outline": 987490,
+  "send-circle": 986616,
+  "send-circle-outline": 986617,
+  "send-clock": 987491,
+  "send-clock-outline": 987492,
+  "send-lock": 985069,
+  "send-lock-outline": 987494,
+  "send-outline": 987493,
+  "serial-port": 984668,
+  "server": 984203,
+  "server-minus": 984204,
+  "server-network": 984205,
+  "server-network-off": 984206,
+  "server-off": 984207,
+  "server-plus": 984208,
+  "server-remove": 984209,
+  "server-security": 984210,
+  "set-all": 984952,
+  "set-center": 984953,
+  "set-center-right": 984954,
+  "set-left": 984955,
+  "set-left-center": 984956,
+  "set-left-right": 984957,
+  "set-merge": 988384,
+  "set-none": 984958,
+  "set-right": 984959,
+  "set-split": 988385,
+  "set-square": 988253,
+  "set-top-box": 985503,
+  "settings-helper": 985710,
+  "shaker": 987406,
+  "shaker-outline": 987407,
+  "shape": 985137,
+  "shape-circle-plus": 984669,
+  "shape-outline": 985138,
+  "shape-oval-plus": 987642,
+  "shape-plus": 984213,
+  "shape-polygon-plus": 984670,
+  "shape-rectangle-plus": 984671,
+  "shape-square-plus": 984672,
+  "share": 984214,
+  "share-all": 987636,
+  "share-all-outline": 987637,
+  "share-circle": 987565,
+  "share-off": 986915,
+  "share-off-outline": 986916,
+  "share-outline": 985394,
+  "share-variant": 984215,
+  "sheep": 986310,
+  "shield": 984216,
+  "shield-account": 985231,
+  "shield-account-outline": 985618,
+  "shield-airplane": 984763,
+  "shield-airplane-outline": 986311,
+  "shield-alert": 986828,
+  "shield-alert-outline": 986829,
+  "shield-bug": 988122,
+  "shield-bug-outline": 988123,
+  "shield-car": 987011,
+  "shield-check": 984421,
+  "shield-check-outline": 986312,
+  "shield-cross": 986313,
+  "shield-cross-outline": 986314,
+  "shield-edit": 987552,
+  "shield-edit-outline": 987553,
+  "shield-half": 988000,
+  "shield-half-full": 984960,
+  "shield-home": 984714,
+  "shield-home-outline": 986315,
+  "shield-key": 986052,
+  "shield-key-outline": 986053,
+  "shield-link-variant": 986419,
+  "shield-link-variant-outline": 986420,
+  "shield-lock": 985501,
+  "shield-lock-outline": 986316,
+  "shield-off": 985502,
+  "shield-off-outline": 985500,
+  "shield-outline": 984217,
+  "shield-plus": 985818,
+  "shield-plus-outline": 985819,
+  "shield-refresh": 983210,
+  "shield-refresh-outline": 983520,
+  "shield-remove": 985820,
+  "shield-remove-outline": 985821,
+  "shield-search": 986522,
+  "shield-star": 987451,
+  "shield-star-outline": 987452,
+  "shield-sun": 987229,
+  "shield-sun-outline": 987230,
+  "shield-sync": 987554,
+  "shield-sync-outline": 987555,
+  "ship-wheel": 985139,
+  "shoe-formal": 985927,
+  "shoe-heel": 985928,
+  "shoe-print": 986618,
+  "shopping": 984218,
+  "shopping-music": 984219,
+  "shopping-outline": 987605,
+  "shopping-search": 987012,
+  "shovel": 984848,
+  "shovel-off": 984849,
+  "shower": 985504,
+  "shower-head": 985505,
+  "shredder": 984220,
+  "shuffle": 984221,
+  "shuffle-disabled": 984222,
+  "shuffle-variant": 984223,
+  "shuriken": 988031,
+  "sigma": 984224,
+  "sigma-lower": 984619,
+  "sign-caution": 984225,
+  "sign-direction": 984961,
+  "sign-direction-minus": 987136,
+  "sign-direction-plus": 987100,
+  "sign-direction-remove": 987101,
+  "sign-real-estate": 987416,
+  "sign-text": 984962,
+  "signal": 984226,
+  "signal-2g": 984850,
+  "signal-3g": 984851,
+  "signal-4g": 984852,
+  "signal-5g": 985711,
+  "signal-cellular-1": 985276,
+  "signal-cellular-2": 985277,
+  "signal-cellular-3": 985278,
+  "signal-cellular-outline": 985279,
+  "signal-distance-variant": 986724,
+  "signal-hspa": 984853,
+  "signal-hspa-plus": 984854,
+  "signal-off": 984963,
+  "signal-variant": 984586,
+  "signature": 986619,
+  "signature-freehand": 986620,
+  "signature-image": 986621,
+  "signature-text": 986622,
+  "silo": 985929,
+  "silverware": 984227,
+  "silverware-clean": 987102,
+  "silverware-fork": 984228,
+  "silverware-fork-knife": 985712,
+  "silverware-spoon": 984229,
+  "silverware-variant": 984230,
+  "sim": 984231,
+  "sim-alert": 984232,
+  "sim-off": 984233,
+  "simple-icons": 987933,
+  "sina-weibo": 985823,
+  "sine-wave": 985435,
+  "sitemap": 984234,
+  "size-l": 988070,
+  "size-m": 988069,
+  "size-s": 988068,
+  "size-xl": 988071,
+  "size-xs": 988067,
+  "size-xxl": 988072,
+  "size-xxs": 988066,
+  "size-xxxl": 988073,
+  "skate": 986421,
+  "skateboard": 988354,
+  "skew-less": 986422,
+  "skew-more": 986423,
+  "ski": 987908,
+  "ski-cross-country": 987909,
+  "ski-water": 987910,
+  "skip-backward": 984235,
+  "skip-backward-outline": 986917,
+  "skip-forward": 984236,
+  "skip-forward-outline": 986918,
+  "skip-next": 984237,
+  "skip-next-circle": 984673,
+  "skip-next-circle-outline": 984674,
+  "skip-next-outline": 986919,
+  "skip-previous": 984238,
+  "skip-previous-circle": 984675,
+  "skip-previous-circle-outline": 984676,
+  "skip-previous-outline": 986920,
+  "skull": 984716,
+  "skull-crossbones": 986054,
+  "skull-crossbones-outline": 986055,
+  "skull-outline": 986056,
+  "skull-scan": 988359,
+  "skull-scan-outline": 988360,
+  "skype": 984239,
+  "skype-business": 984240,
+  "slack": 984241,
+  "slash-forward": 987103,
+  "slash-forward-box": 987104,
+  "sleep": 984242,
+  "sleep-off": 984243,
+  "slope-downhill": 986623,
+  "slope-uphill": 986624,
+  "slot-machine": 987412,
+  "slot-machine-outline": 987413,
+  "smart-card": 987325,
+  "smart-card-outline": 987326,
+  "smart-card-reader": 987327,
+  "smart-card-reader-outline": 987328,
+  "smog": 985713,
+  "smoke-detector": 983954,
+  "smoking": 984244,
+  "smoking-off": 984245,
+  "smoking-pipe": 988173,
+  "smoking-pipe-off": 988200,
+  "snapchat": 984246,
+  "snowboard": 987911,
+  "snowflake": 984855,
+  "snowflake-alert": 986921,
+  "snowflake-melt": 987851,
+  "snowflake-variant": 986922,
+  "snowman": 984247,
+  "soccer": 984248,
+  "soccer-field": 985140,
+  "sofa": 984249,
+  "solar-panel": 986523,
+  "solar-panel-large": 986524,
+  "solar-power": 985714,
+  "soldering-iron": 987282,
+  "solid": 984717,
+  "sony-playstation": 984084,
+  "sort": 984250,
+  "sort-alphabetical-ascending": 984509,
+  "sort-alphabetical-ascending-variant": 987464,
+  "sort-alphabetical-descending": 984511,
+  "sort-alphabetical-descending-variant": 987465,
+  "sort-alphabetical-variant": 984251,
+  "sort-ascending": 984252,
+  "sort-bool-ascending": 988037,
+  "sort-bool-ascending-variant": 988038,
+  "sort-bool-descending": 988039,
+  "sort-bool-descending-variant": 988040,
+  "sort-descending": 984253,
+  "sort-numeric-ascending": 988041,
+  "sort-numeric-ascending-variant": 985357,
+  "sort-numeric-descending": 988042,
+  "sort-numeric-descending-variant": 985810,
+  "sort-numeric-variant": 984254,
+  "sort-reverse-variant": 983868,
+  "sort-variant": 984255,
+  "sort-variant-lock": 986317,
+  "sort-variant-lock-open": 986318,
+  "sort-variant-remove": 987463,
+  "soundcloud": 984256,
+  "source-branch": 984620,
+  "source-branch-check": 988367,
+  "source-branch-minus": 988363,
+  "source-branch-plus": 988362,
+  "source-branch-refresh": 988365,
+  "source-branch-remove": 988364,
+  "source-branch-sync": 988366,
+  "source-commit": 984856,
+  "source-commit-end": 984857,
+  "source-commit-end-local": 984858,
+  "source-commit-local": 984859,
+  "source-commit-next-local": 984860,
+  "source-commit-start": 984861,
+  "source-commit-start-next-local": 984862,
+  "source-fork": 984257,
+  "source-merge": 984621,
+  "source-pull": 984258,
+  "source-repository": 986319,
+  "source-repository-multiple": 986320,
+  "soy-sauce": 985070,
+  "soy-sauce-off": 988156,
+  "spa": 986321,
+  "spa-outline": 986322,
+  "space-invaders": 986057,
+  "space-station": 988035,
+  "spade": 986725,
+  "speaker": 984259,
+  "speaker-bluetooth": 985506,
+  "speaker-multiple": 986424,
+  "speaker-off": 984260,
+  "speaker-wireless": 984863,
+  "speedometer": 984261,
+  "speedometer-medium": 987013,
+  "speedometer-slow": 987014,
+  "spellcheck": 984262,
+  "spider": 987626,
+  "spider-thread": 987627,
+  "spider-web": 986058,
+  "spoon-sugar": 988201,
+  "spotify": 984263,
+  "spotlight": 984264,
+  "spotlight-beam": 984265,
+  "spray": 984677,
+  "spray-bottle": 985824,
+  "sprinkler": 987231,
+  "sprinkler-variant": 987232,
+  "sprout": 986726,
+  "sprout-outline": 986727,
+  "square": 984932,
+  "square-edit-outline": 985356,
+  "square-medium": 985619,
+  "square-medium-outline": 985620,
+  "square-off": 987886,
+  "square-off-outline": 987887,
+  "square-outline": 984931,
+  "square-root": 984964,
+  "square-root-box": 985507,
+  "square-small": 985621,
+  "square-wave": 988283,
+  "squeegee": 985825,
+  "ssh": 985280,
+  "stack-exchange": 984587,
+  "stack-overflow": 984268,
+  "stackpath": 983897,
+  "stadium": 987129,
+  "stadium-variant": 984864,
+  "stairs": 984269,
+  "stairs-box": 988062,
+  "stairs-down": 987838,
+  "stairs-up": 987837,
+  "stamper": 986425,
+  "standard-definition": 985071,
+  "star": 984270,
+  "star-box": 985715,
+  "star-box-multiple": 987782,
+  "star-box-multiple-outline": 987783,
+  "star-box-outline": 985716,
+  "star-circle": 984271,
+  "star-circle-outline": 985508,
+  "star-face": 985509,
+  "star-four-points": 985826,
+  "star-four-points-outline": 985827,
+  "star-half": 983622,
+  "star-half-full": 984272,
+  "star-off": 984273,
+  "star-outline": 984274,
+  "star-three-points": 985828,
+  "star-three-points-outline": 985829,
+  "state-machine": 987631,
+  "steam": 984275,
+  "steering": 984276,
+  "steering-off": 985358,
+  "step-backward": 984277,
+  "step-backward-2": 984278,
+  "step-forward": 984279,
+  "step-forward-2": 984280,
+  "stethoscope": 984281,
+  "sticker": 988004,
+  "sticker-alert": 988005,
+  "sticker-alert-outline": 988006,
+  "sticker-check": 988007,
+  "sticker-check-outline": 988008,
+  "sticker-circle-outline": 984528,
+  "sticker-emoji": 984965,
+  "sticker-minus": 988009,
+  "sticker-minus-outline": 988010,
+  "sticker-outline": 988011,
+  "sticker-plus": 988012,
+  "sticker-plus-outline": 988013,
+  "sticker-remove": 988014,
+  "sticker-remove-outline": 988015,
+  "stocking": 984282,
+  "stomach": 987283,
+  "stop": 984283,
+  "stop-circle": 984678,
+  "stop-circle-outline": 984679,
+  "store": 984284,
+  "store-24-hour": 984285,
+  "store-outline": 988001,
+  "storefront": 985031,
+  "storefront-outline": 987329,
+  "stove": 984286,
+  "strategy": 987606,
+  "stretch-to-page": 986923,
+  "stretch-to-page-outline": 986924,
+  "string-lights": 987834,
+  "string-lights-off": 987835,
+  "subdirectory-arrow-left": 984588,
+  "subdirectory-arrow-right": 984589,
+  "subtitles": 985622,
+  "subtitles-outline": 985623,
+  "subway": 984748,
+  "subway-alert-variant": 986525,
+  "subway-variant": 984287,
+  "summit": 984966,
+  "sunglasses": 984288,
+  "surround-sound": 984517,
+  "surround-sound-2-0": 985072,
+  "surround-sound-3-1": 985073,
+  "surround-sound-5-1": 985074,
+  "surround-sound-7-1": 985075,
+  "svg": 984865,
+  "swap-horizontal": 984289,
+  "swap-horizontal-bold": 986061,
+  "swap-horizontal-circle": 987105,
+  "swap-horizontal-circle-outline": 987106,
+  "swap-horizontal-variant": 985281,
+  "swap-vertical": 984290,
+  "swap-vertical-bold": 986062,
+  "swap-vertical-circle": 987107,
+  "swap-vertical-circle-outline": 987108,
+  "swap-vertical-variant": 985282,
+  "swim": 984291,
+  "switch": 984292,
+  "sword": 984293,
+  "sword-cross": 984967,
+  "syllabary-hangul": 987955,
+  "syllabary-hiragana": 987956,
+  "syllabary-katakana": 987957,
+  "syllabary-katakana-halfwidth": 987958,
+  "symfony": 985830,
+  "sync": 984294,
+  "sync-alert": 984295,
+  "sync-circle": 988024,
+  "sync-off": 984296,
+  "tab": 984297,
+  "tab-minus": 985931,
+  "tab-plus": 984924,
+  "tab-remove": 985932,
+  "tab-unselected": 984298,
+  "table": 984299,
+  "table-account": 988089,
+  "table-alert": 988090,
+  "table-arrow-down": 988091,
+  "table-arrow-left": 988092,
+  "table-arrow-right": 988093,
+  "table-arrow-up": 988094,
+  "table-border": 985624,
+  "table-cancel": 988095,
+  "table-chair": 987233,
+  "table-check": 988096,
+  "table-clock": 988097,
+  "table-cog": 988098,
+  "table-column": 985141,
+  "table-column-plus-after": 984300,
+  "table-column-plus-before": 984301,
+  "table-column-remove": 984302,
+  "table-column-width": 984303,
+  "table-edit": 984304,
+  "table-eye": 987284,
+  "table-eye-off": 988099,
+  "table-furniture": 984508,
+  "table-headers-eye": 987677,
+  "table-headers-eye-off": 987678,
+  "table-heart": 988100,
+  "table-key": 988101,
+  "table-large": 984305,
+  "table-large-plus": 987015,
+  "table-large-remove": 987016,
+  "table-lock": 988102,
+  "table-merge-cells": 985510,
+  "table-minus": 988103,
+  "table-multiple": 988104,
+  "table-network": 988105,
+  "table-of-contents": 985142,
+  "table-off": 988106,
+  "table-plus": 985717,
+  "table-refresh": 988064,
+  "table-remove": 985718,
+  "table-row": 985143,
+  "table-row-height": 984306,
+  "table-row-plus-after": 984307,
+  "table-row-plus-before": 984308,
+  "table-row-remove": 984309,
+  "table-search": 985359,
+  "table-settings": 985144,
+  "table-split-cell": 988202,
+  "table-star": 988107,
+  "table-sync": 988065,
+  "table-tennis": 986728,
+  "tablet": 984310,
+  "tablet-android": 984311,
+  "tablet-cellphone": 985511,
+  "tablet-dashboard": 986830,
+  "tablet-ipad": 984312,
+  "taco": 984930,
+  "tag": 984313,
+  "tag-faces": 984314,
+  "tag-heart": 984715,
+  "tag-heart-outline": 986063,
+  "tag-minus": 985360,
+  "tag-minus-outline": 987679,
+  "tag-multiple": 984315,
+  "tag-multiple-outline": 987895,
+  "tag-off": 987680,
+  "tag-off-outline": 987681,
+  "tag-outline": 984316,
+  "tag-plus": 984866,
+  "tag-plus-outline": 987682,
+  "tag-remove": 984867,
+  "tag-remove-outline": 987683,
+  "tag-text": 987684,
+  "tag-text-outline": 984317,
+  "tailwind": 988159,
+  "tank": 986426,
+  "tanker-truck": 987109,
+  "tape-measure": 985933,
+  "target": 984318,
+  "target-account": 986064,
+  "target-variant": 985719,
+  "taxi": 984319,
+  "tea": 986526,
+  "tea-outline": 986527,
+  "teach": 985232,
+  "teamviewer": 984320,
+  "telegram": 984321,
+  "telescope": 985934,
+  "television": 984322,
+  "television-ambient-light": 987990,
+  "television-box": 985145,
+  "television-classic": 985076,
+  "television-classic-off": 985146,
+  "television-clean": 987408,
+  "television-guide": 984323,
+  "television-off": 985147,
+  "television-pause": 987017,
+  "television-play": 986831,
+  "television-stop": 987018,
+  "temperature-celsius": 984324,
+  "temperature-fahrenheit": 984325,
+  "temperature-kelvin": 984326,
+  "tennis": 986528,
+  "tennis-ball": 984327,
+  "tent": 984328,
+  "terraform": 987234,
+  "terrain": 984329,
+  "test-tube": 984680,
+  "test-tube-empty": 985361,
+  "test-tube-off": 985362,
+  "text": 985512,
+  "text-box": 983578,
+  "text-box-check": 986790,
+  "text-box-check-outline": 986791,
+  "text-box-minus": 986792,
+  "text-box-minus-outline": 986793,
+  "text-box-multiple": 985783,
+  "text-box-multiple-outline": 985784,
+  "text-box-outline": 985581,
+  "text-box-plus": 986794,
+  "text-box-plus-outline": 986795,
+  "text-box-remove": 986796,
+  "text-box-remove-outline": 986797,
+  "text-box-search": 986798,
+  "text-box-search-outline": 986799,
+  "text-recognition": 987453,
+  "text-search": 988088,
+  "text-shadow": 984681,
+  "text-short": 985513,
+  "text-subject": 985514,
+  "text-to-speech": 984330,
+  "text-to-speech-off": 984331,
+  "texture": 984332,
+  "texture-box": 987110,
+  "theater": 984333,
+  "theme-light-dark": 984334,
+  "thermometer": 984335,
+  "thermometer-alert": 986625,
+  "thermometer-chevron-down": 986626,
+  "thermometer-chevron-up": 986627,
+  "thermometer-high": 987330,
+  "thermometer-lines": 984336,
+  "thermometer-low": 987331,
+  "thermometer-minus": 986628,
+  "thermometer-plus": 986629,
+  "thermostat": 983955,
+  "thermostat-box": 985233,
+  "thought-bubble": 985078,
+  "thought-bubble-outline": 985079,
+  "thumb-down": 984337,
+  "thumb-down-outline": 984338,
+  "thumb-up": 984339,
+  "thumb-up-outline": 984340,
+  "thumbs-up-down": 984341,
+  "ticket": 984342,
+  "ticket-account": 984343,
+  "ticket-confirmation": 984344,
+  "ticket-confirmation-outline": 988074,
+  "ticket-outline": 985363,
+  "ticket-percent": 984868,
+  "ticket-percent-outline": 988203,
+  "tie": 984345,
+  "tilde": 984869,
+  "timelapse": 984346,
+  "timeline": 986065,
+  "timeline-alert": 987029,
+  "timeline-alert-outline": 987032,
+  "timeline-clock": 987643,
+  "timeline-clock-outline": 987644,
+  "timeline-help": 987033,
+  "timeline-help-outline": 987034,
+  "timeline-outline": 986066,
+  "timeline-plus": 987030,
+  "timeline-plus-outline": 987031,
+  "timeline-text": 986067,
+  "timeline-text-outline": 986068,
+  "timer": 988075,
+  "timer-10": 984348,
+  "timer-3": 984349,
+  "timer-off": 988076,
+  "timer-off-outline": 984350,
+  "timer-outline": 984347,
+  "timer-sand": 984351,
+  "timer-sand-empty": 984749,
+  "timer-sand-full": 984972,
+  "timetable": 984352,
+  "toaster": 987235,
+  "toaster-off": 987575,
+  "toaster-oven": 986323,
+  "toggle-switch": 984353,
+  "toggle-switch-off": 984354,
+  "toggle-switch-off-outline": 985625,
+  "toggle-switch-outline": 985626,
+  "toilet": 985515,
+  "toolbox": 985516,
+  "toolbox-outline": 985517,
+  "tools": 987236,
+  "tooltip": 984355,
+  "tooltip-account": 983052,
+  "tooltip-edit": 984356,
+  "tooltip-edit-outline": 987845,
+  "tooltip-image": 984357,
+  "tooltip-image-outline": 986069,
+  "tooltip-outline": 984358,
+  "tooltip-plus": 986070,
+  "tooltip-plus-outline": 984359,
+  "tooltip-text": 984360,
+  "tooltip-text-outline": 986071,
+  "tooth": 985283,
+  "tooth-outline": 984361,
+  "toothbrush": 987433,
+  "toothbrush-electric": 987436,
+  "toothbrush-paste": 987434,
+  "tortoise": 986427,
+  "toslink": 987832,
+  "tournament": 985518,
+  "tow-truck": 985148,
+  "tower-beach": 984705,
+  "tower-fire": 984706,
+  "toy-brick": 987784,
+  "toy-brick-marker": 987785,
+  "toy-brick-marker-outline": 987786,
+  "toy-brick-minus": 987787,
+  "toy-brick-minus-outline": 987788,
+  "toy-brick-outline": 987789,
+  "toy-brick-plus": 987790,
+  "toy-brick-plus-outline": 987791,
+  "toy-brick-remove": 987792,
+  "toy-brick-remove-outline": 987793,
+  "toy-brick-search": 987794,
+  "toy-brick-search-outline": 987795,
+  "track-light": 985364,
+  "trackpad": 985080,
+  "trackpad-lock": 985395,
+  "tractor": 985234,
+  "tractor-variant": 988356,
+  "trademark": 985720,
+  "traffic-cone": 988028,
+  "traffic-light": 984363,
+  "train": 984364,
+  "train-car": 986072,
+  "train-variant": 985284,
+  "tram": 984365,
+  "tram-side": 987111,
+  "transcribe": 984366,
+  "transcribe-close": 984367,
+  "transfer": 987237,
+  "transfer-down": 986529,
+  "transfer-left": 986530,
+  "transfer-right": 984368,
+  "transfer-up": 986531,
+  "transit-connection": 986428,
+  "transit-connection-variant": 986429,
+  "transit-detour": 987019,
+  "transit-transfer": 984750,
+  "transition": 985365,
+  "transition-masked": 985366,
+  "translate": 984522,
+  "translate-off": 986630,
+  "transmission-tower": 986430,
+  "trash-can": 985721,
+  "trash-can-outline": 985722,
+  "tray": 987796,
+  "tray-alert": 987797,
+  "tray-full": 987798,
+  "tray-minus": 987799,
+  "tray-plus": 987800,
+  "tray-remove": 987801,
+  "treasure-chest": 984870,
+  "tree": 984369,
+  "tree-outline": 986729,
+  "trello": 984370,
+  "trending-down": 984371,
+  "trending-neutral": 984372,
+  "trending-up": 984373,
+  "triangle": 984374,
+  "triangle-outline": 984375,
+  "triangle-wave": 988284,
+  "triforce": 986073,
+  "trophy": 984376,
+  "trophy-award": 984377,
+  "trophy-broken": 986532,
+  "trophy-outline": 984378,
+  "trophy-variant": 984379,
+  "trophy-variant-outline": 984380,
+  "truck": 984381,
+  "truck-check": 986324,
+  "truck-check-outline": 987802,
+  "truck-delivery": 984382,
+  "truck-delivery-outline": 987803,
+  "truck-fast": 984968,
+  "truck-fast-outline": 987804,
+  "truck-outline": 987805,
+  "truck-trailer": 984871,
+  "trumpet": 987286,
+  "tshirt-crew": 985723,
+  "tshirt-crew-outline": 984383,
+  "tshirt-v": 985724,
+  "tshirt-v-outline": 984384,
+  "tumble-dryer": 985367,
+  "tumble-dryer-alert": 987578,
+  "tumble-dryer-off": 987579,
+  "tune": 984622,
+  "tune-vertical": 984682,
+  "turnstile": 986325,
+  "turnstile-outline": 986326,
+  "turtle": 986327,
+  "twitch": 984387,
+  "twitter": 984388,
+  "twitter-retweet": 984391,
+  "two-factor-authentication": 985519,
+  "typewriter": 986925,
+  "ubisoft": 986074,
+  "ubuntu": 984392,
+  "ufo": 987332,
+  "ufo-outline": 987333,
+  "ultra-high-definition": 985081,
+  "umbraco": 984393,
+  "umbrella": 984394,
+  "umbrella-closed": 985520,
+  "umbrella-closed-outline": 988130,
+  "umbrella-closed-variant": 988129,
+  "umbrella-outline": 984395,
+  "undo": 984396,
+  "undo-variant": 984397,
+  "unfold-less-horizontal": 984398,
+  "unfold-less-vertical": 984928,
+  "unfold-more-horizontal": 984399,
+  "unfold-more-vertical": 984929,
+  "ungroup": 984400,
+  "unicode": 986832,
+  "unity": 984751,
+  "unreal": 985521,
+  "untappd": 984401,
+  "update": 984752,
+  "upload": 984402,
+  "upload-lock": 988019,
+  "upload-lock-outline": 988020,
+  "upload-multiple": 985149,
+  "upload-network": 984822,
+  "upload-network-outline": 986328,
+  "upload-off": 987334,
+  "upload-off-outline": 987335,
+  "upload-outline": 986631,
+  "usb": 984403,
+  "usb-flash-drive": 987806,
+  "usb-flash-drive-outline": 987807,
+  "usb-port": 987632,
+  "valve": 987238,
+  "valve-closed": 987239,
+  "valve-open": 987240,
+  "van-passenger": 985082,
+  "van-utility": 985083,
+  "vanish": 985084,
+  "vanity-light": 987617,
+  "variable": 985831,
+  "variable-box": 987409,
+  "vector-arrange-above": 984404,
+  "vector-arrange-below": 984405,
+  "vector-bezier": 985832,
+  "vector-circle": 984406,
+  "vector-circle-variant": 984407,
+  "vector-combine": 984408,
+  "vector-curve": 984409,
+  "vector-difference": 984410,
+  "vector-difference-ab": 984411,
+  "vector-difference-ba": 984412,
+  "vector-ellipse": 985235,
+  "vector-intersection": 984413,
+  "vector-line": 984414,
+  "vector-link": 987112,
+  "vector-point": 984415,
+  "vector-polygon": 984416,
+  "vector-polyline": 984417,
+  "vector-polyline-edit": 987685,
+  "vector-polyline-minus": 987686,
+  "vector-polyline-plus": 987687,
+  "vector-polyline-remove": 987688,
+  "vector-radius": 984906,
+  "vector-rectangle": 984518,
+  "vector-selection": 984418,
+  "vector-square": 983041,
+  "vector-triangle": 984419,
+  "vector-union": 984420,
+  "vhs": 985627,
+  "vibrate": 984422,
+  "vibrate-off": 986329,
+  "video": 984423,
+  "video-3d": 985085,
+  "video-3d-off": 988121,
+  "video-3d-variant": 986833,
+  "video-4k-box": 985150,
+  "video-account": 985369,
+  "video-box": 983293,
+  "video-box-off": 983294,
+  "video-check": 987241,
+  "video-check-outline": 987242,
+  "video-image": 985370,
+  "video-input-antenna": 985151,
+  "video-input-component": 985152,
+  "video-input-hdmi": 985153,
+  "video-input-scart": 987020,
+  "video-input-svideo": 985154,
+  "video-minus": 985522,
+  "video-minus-outline": 983738,
+  "video-off": 984424,
+  "video-off-outline": 986075,
+  "video-outline": 986076,
+  "video-plus": 985523,
+  "video-plus-outline": 983507,
+  "video-stabilization": 985371,
+  "video-switch": 984425,
+  "video-switch-outline": 984976,
+  "video-vintage": 985628,
+  "video-wireless": 986834,
+  "video-wireless-outline": 986835,
+  "view-agenda": 984426,
+  "view-agenda-outline": 987608,
+  "view-array": 984427,
+  "view-array-outline": 988293,
+  "view-carousel": 984428,
+  "view-carousel-outline": 988294,
+  "view-column": 984429,
+  "view-column-outline": 988295,
+  "view-comfy": 986730,
+  "view-comfy-outline": 988296,
+  "view-compact": 986731,
+  "view-compact-outline": 986732,
+  "view-dashboard": 984430,
+  "view-dashboard-outline": 985629,
+  "view-dashboard-variant": 985155,
+  "view-dashboard-variant-outline": 988297,
+  "view-day": 984431,
+  "view-day-outline": 988298,
+  "view-grid": 984432,
+  "view-grid-outline": 987609,
+  "view-grid-plus": 987021,
+  "view-grid-plus-outline": 987610,
+  "view-headline": 984433,
+  "view-list": 984434,
+  "view-list-outline": 988299,
+  "view-module": 984435,
+  "view-module-outline": 988300,
+  "view-parallel": 984872,
+  "view-parallel-outline": 988301,
+  "view-quilt": 984436,
+  "view-quilt-outline": 988302,
+  "view-sequential": 984873,
+  "view-sequential-outline": 988303,
+  "view-split-horizontal": 986059,
+  "view-split-vertical": 986060,
+  "view-stream": 984437,
+  "view-stream-outline": 988304,
+  "view-week": 984438,
+  "view-week-outline": 988305,
+  "vimeo": 984439,
+  "violin": 984591,
+  "virtual-reality": 985236,
+  "virus": 988086,
+  "virus-outline": 988087,
+  "vk": 984441,
+  "vlc": 984444,
+  "voice-off": 986836,
+  "voicemail": 984445,
+  "volleyball": 985524,
+  "volume-high": 984446,
+  "volume-low": 984447,
+  "volume-medium": 984448,
+  "volume-minus": 984926,
+  "volume-mute": 984927,
+  "volume-off": 984449,
+  "volume-plus": 984925,
+  "volume-source": 987424,
+  "volume-variant-off": 986632,
+  "volume-vibrate": 987425,
+  "vote": 985631,
+  "vote-outline": 985632,
+  "vpn": 984450,
+  "vuejs": 985156,
+  "vuetify": 986733,
+  "walk": 984451,
+  "wall": 985086,
+  "wall-sconce": 985372,
+  "wall-sconce-flat": 985373,
+  "wall-sconce-flat-variant": 984092,
+  "wall-sconce-round": 984904,
+  "wall-sconce-round-variant": 985374,
+  "wallet": 984452,
+  "wallet-giftcard": 984453,
+  "wallet-membership": 984454,
+  "wallet-outline": 986077,
+  "wallet-plus": 987022,
+  "wallet-plus-outline": 987023,
+  "wallet-travel": 984455,
+  "wallpaper": 986633,
+  "wan": 984456,
+  "wardrobe": 987024,
+  "wardrobe-outline": 987025,
+  "warehouse": 987009,
+  "washing-machine": 984874,
+  "washing-machine-alert": 987580,
+  "washing-machine-off": 987581,
+  "watch": 984457,
+  "watch-export": 984458,
+  "watch-export-variant": 985237,
+  "watch-import": 984459,
+  "watch-import-variant": 985238,
+  "watch-variant": 985239,
+  "watch-vibrate": 984753,
+  "watch-vibrate-off": 986330,
+  "water": 984460,
+  "water-boiler": 987026,
+  "water-boiler-alert": 987571,
+  "water-boiler-off": 987572,
+  "water-off": 984461,
+  "water-outline": 986634,
+  "water-percent": 984462,
+  "water-polo": 987808,
+  "water-pump": 984463,
+  "water-pump-off": 987027,
+  "water-well": 987243,
+  "water-well-outline": 987244,
+  "watering-can": 988289,
+  "watering-can-outline": 988290,
+  "watermark": 984594,
+  "wave": 986926,
+  "waveform": 988285,
+  "waves": 984973,
+  "waze": 986078,
+  "weather-cloudy": 984464,
+  "weather-cloudy-alert": 986927,
+  "weather-cloudy-arrow-right": 986734,
+  "weather-fog": 984465,
+  "weather-hail": 984466,
+  "weather-hazy": 986928,
+  "weather-hurricane": 985240,
+  "weather-lightning": 984467,
+  "weather-lightning-rainy": 984702,
+  "weather-night": 984468,
+  "weather-night-partly-cloudy": 986929,
+  "weather-partly-cloudy": 984469,
+  "weather-partly-lightning": 986930,
+  "weather-partly-rainy": 986931,
+  "weather-partly-snowy": 986932,
+  "weather-partly-snowy-rainy": 986933,
+  "weather-pouring": 984470,
+  "weather-rainy": 984471,
+  "weather-snowy": 984472,
+  "weather-snowy-heavy": 986934,
+  "weather-snowy-rainy": 984703,
+  "weather-sunny": 984473,
+  "weather-sunny-alert": 986935,
+  "weather-sunset": 984474,
+  "weather-sunset-down": 984475,
+  "weather-sunset-up": 984476,
+  "weather-tornado": 986936,
+  "weather-windy": 984477,
+  "weather-windy-variant": 984478,
+  "web": 984479,
+  "web-box": 987028,
+  "web-clock": 987722,
+  "webcam": 984480,
+  "webhook": 984623,
+  "webpack": 984875,
+  "webrtc": 987720,
+  "wechat": 984593,
+  "weight": 984481,
+  "weight-gram": 986431,
+  "weight-kilogram": 984482,
+  "weight-lifter": 987485,
+  "weight-pound": 985525,
+  "whatsapp": 984483,
+  "wheelchair-accessibility": 984484,
+  "whistle": 985526,
+  "whistle-outline": 987836,
+  "white-balance-auto": 984485,
+  "white-balance-incandescent": 984486,
+  "white-balance-iridescent": 984487,
+  "white-balance-sunny": 984488,
+  "widgets": 984876,
+  "widgets-outline": 987989,
+  "wifi": 984489,
+  "wifi-off": 984490,
+  "wifi-star": 986635,
+  "wifi-strength-1": 985375,
+  "wifi-strength-1-alert": 985376,
+  "wifi-strength-1-lock": 985377,
+  "wifi-strength-2": 985378,
+  "wifi-strength-2-alert": 985379,
+  "wifi-strength-2-lock": 985380,
+  "wifi-strength-3": 985381,
+  "wifi-strength-3-alert": 985382,
+  "wifi-strength-3-lock": 985383,
+  "wifi-strength-4": 985384,
+  "wifi-strength-4-alert": 985385,
+  "wifi-strength-4-lock": 985386,
+  "wifi-strength-alert-outline": 985387,
+  "wifi-strength-lock-outline": 985388,
+  "wifi-strength-off": 985389,
+  "wifi-strength-off-outline": 985390,
+  "wifi-strength-outline": 985391,
+  "wikipedia": 984492,
+  "wind-turbine": 986533,
+  "window-close": 984493,
+  "window-closed": 984494,
+  "window-closed-variant": 987611,
+  "window-maximize": 984495,
+  "window-minimize": 984496,
+  "window-open": 984497,
+  "window-open-variant": 987612,
+  "window-restore": 984498,
+  "window-shutter": 987420,
+  "window-shutter-alert": 987421,
+  "window-shutter-open": 987422,
+  "wiper": 985833,
+  "wiper-wash": 986534,
+  "wizard-hat": 988279,
+  "wordpress": 984500,
+  "wrap": 984502,
+  "wrap-disabled": 986079,
+  "wrench": 984503,
+  "wrench-outline": 986080,
+  "xamarin": 985157,
+  "xamarin-outline": 985158,
+  "xing": 984510,
+  "xml": 984512,
+  "xmpp": 985087,
+  "y-combinator": 984612,
+  "yahoo": 985935,
+  "yeast": 984513,
+  "yin-yang": 984704,
+  "yoga": 987516,
+  "youtube": 984515,
+  "youtube-gaming": 985160,
+  "youtube-studio": 985159,
+  "youtube-subscription": 986432,
+  "youtube-tv": 984136,
+  "z-wave": 985834,
+  "zend": 985835,
+  "zigbee": 986433,
+  "zip-box": 984516,
+  "zip-box-outline": 987130,
+  "zip-disk": 985635,
+  "zodiac-aquarius": 985725,
+  "zodiac-aries": 985726,
+  "zodiac-cancer": 985727,
+  "zodiac-capricorn": 985728,
+  "zodiac-gemini": 985729,
+  "zodiac-leo": 985730,
+  "zodiac-libra": 985731,
+  "zodiac-pisces": 985732,
+  "zodiac-sagittarius": 985733,
+  "zodiac-scorpio": 985734,
+  "zodiac-taurus": 985735,
+  "zodiac-virgo": 985736,
+  "blank": 63116
+}

+ 1564 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_materialicons.json

@@ -0,0 +1,1564 @@
+{
+  "360": 58743,
+  "10k": 59729,
+  "10mp": 59730,
+  "11mp": 59731,
+  "12mp": 59732,
+  "13mp": 59733,
+  "14mp": 59734,
+  "15mp": 59735,
+  "16mp": 59736,
+  "17mp": 59737,
+  "18mp": 59738,
+  "19mp": 59739,
+  "1k": 59740,
+  "1k-plus": 59741,
+  "20mp": 59742,
+  "21mp": 59743,
+  "22mp": 59744,
+  "23mp": 59745,
+  "24mp": 59746,
+  "2k": 59747,
+  "2k-plus": 59748,
+  "2mp": 59749,
+  "3d-rotation": 59469,
+  "3k": 59750,
+  "3k-plus": 59751,
+  "3mp": 59752,
+  "4k": 57458,
+  "4k-plus": 59753,
+  "4mp": 59754,
+  "5g": 61240,
+  "5k": 59755,
+  "5k-plus": 59756,
+  "5mp": 59757,
+  "6-ft-apart": 61982,
+  "6k": 59758,
+  "6k-plus": 59759,
+  "6mp": 59760,
+  "7k": 59761,
+  "7k-plus": 59762,
+  "7mp": 59763,
+  "8k": 59764,
+  "8k-plus": 59765,
+  "8mp": 59766,
+  "9k": 59767,
+  "9k-plus": 59768,
+  "9mp": 59769,
+  "ac-unit": 60219,
+  "access-alarm": 57744,
+  "access-alarms": 57745,
+  "access-time": 57746,
+  "accessibility": 59470,
+  "accessibility-new": 59692,
+  "accessible": 59668,
+  "accessible-forward": 59700,
+  "account-balance": 59471,
+  "account-balance-wallet": 59472,
+  "account-box": 59473,
+  "account-circle": 59475,
+  "account-tree": 59770,
+  "ad-units": 61241,
+  "adb": 58894,
+  "add": 57669,
+  "add-a-photo": 58425,
+  "add-alarm": 57747,
+  "add-alert": 57347,
+  "add-box": 57670,
+  "add-business": 59177,
+  "add-call": 57576,
+  "add-chart": 59771,
+  "add-circle": 57671,
+  "add-circle-outline": 57672,
+  "add-comment": 57958,
+  "add-ic-call": 59772,
+  "add-link": 57720,
+  "add-location": 58727,
+  "add-location-alt": 61242,
+  "add-moderator": 59773,
+  "add-photo-alternate": 58430,
+  "add-road": 61243,
+  "add-shopping-cart": 59476,
+  "add-task": 62010,
+  "add-to-drive": 58972,
+  "add-to-home-screen": 57854,
+  "add-to-photos": 58269,
+  "add-to-queue": 57436,
+  "addchart": 61244,
+  "adjust": 58270,
+  "admin-panel-settings": 61245,
+  "agriculture": 60025,
+  "airline-seat-flat": 58928,
+  "airline-seat-flat-angled": 58929,
+  "airline-seat-individual-suite": 58930,
+  "airline-seat-legroom-extra": 58931,
+  "airline-seat-legroom-normal": 58932,
+  "airline-seat-legroom-reduced": 58933,
+  "airline-seat-recline-extra": 58934,
+  "airline-seat-recline-normal": 58935,
+  "airplanemode-active": 57749,
+  "airplanemode-inactive": 57748,
+  "airplanemode-off": 57748,
+  "airplanemode-on": 57749,
+  "airplay": 57429,
+  "airport-shuttle": 60220,
+  "alarm": 59477,
+  "alarm-add": 59478,
+  "alarm-off": 59479,
+  "alarm-on": 59480,
+  "album": 57369,
+  "align-horizontal-center": 57359,
+  "align-horizontal-left": 57357,
+  "align-horizontal-right": 57360,
+  "align-vertical-bottom": 57365,
+  "align-vertical-center": 57361,
+  "align-vertical-top": 57356,
+  "all-inbox": 59775,
+  "all-inclusive": 60221,
+  "all-out": 59659,
+  "alt-route": 61828,
+  "alternate-email": 57574,
+  "amp-stories": 59923,
+  "analytics": 61246,
+  "anchor": 61901,
+  "android": 59481,
+  "animation": 59164,
+  "announcement": 59482,
+  "apartment": 59968,
+  "api": 61879,
+  "app-blocking": 61247,
+  "app-registration": 61248,
+  "app-settings-alt": 61249,
+  "approval": 59778,
+  "apps": 58819,
+  "architecture": 59963,
+  "archive": 57673,
+  "arrow-back": 58820,
+  "arrow-back-ios": 58848,
+  "arrow-circle-down": 61825,
+  "arrow-circle-up": 61826,
+  "arrow-downward": 58843,
+  "arrow-drop-down": 58821,
+  "arrow-drop-down-circle": 58822,
+  "arrow-drop-up": 58823,
+  "arrow-forward": 58824,
+  "arrow-forward-ios": 58849,
+  "arrow-left": 58846,
+  "arrow-right": 58847,
+  "arrow-right-alt": 59713,
+  "arrow-upward": 58840,
+  "art-track": 57440,
+  "article": 61250,
+  "aspect-ratio": 59483,
+  "assessment": 59484,
+  "assignment": 59485,
+  "assignment-ind": 59486,
+  "assignment-late": 59487,
+  "assignment-return": 59488,
+  "assignment-returned": 59489,
+  "assignment-turned-in": 59490,
+  "assistant": 58271,
+  "assistant-direction": 59784,
+  "assistant-navigation": 59785,
+  "assistant-photo": 58272,
+  "atm": 58739,
+  "attach-email": 59998,
+  "attach-file": 57894,
+  "attach-money": 57895,
+  "attachment": 58044,
+  "attractions": 59986,
+  "audiotrack": 58273,
+  "auto-awesome": 58975,
+  "auto-awesome-mosaic": 58976,
+  "auto-awesome-motion": 58977,
+  "auto-delete": 59980,
+  "auto-fix-high": 58979,
+  "auto-fix-normal": 58980,
+  "auto-fix-off": 58981,
+  "auto-stories": 58982,
+  "autorenew": 59491,
+  "av-timer": 57371,
+  "baby-changing-station": 61851,
+  "backpack": 61852,
+  "backspace": 57674,
+  "backup": 59492,
+  "backup-table": 61251,
+  "badge": 60007,
+  "bakery-dining": 59987,
+  "ballot": 57714,
+  "bar-chart": 57963,
+  "batch-prediction": 61685,
+  "bathtub": 59969,
+  "battery-alert": 57756,
+  "battery-charging-full": 57763,
+  "battery-full": 57764,
+  "battery-std": 57765,
+  "battery-unknown": 57766,
+  "beach-access": 60222,
+  "bedtime": 61252,
+  "beenhere": 58669,
+  "bento": 61940,
+  "bike-scooter": 61253,
+  "biotech": 59962,
+  "block": 57675,
+  "block-flipped": 61254,
+  "bluetooth": 57767,
+  "bluetooth-audio": 58895,
+  "bluetooth-connected": 57768,
+  "bluetooth-disabled": 57769,
+  "bluetooth-searching": 57770,
+  "blur-circular": 58274,
+  "blur-linear": 58275,
+  "blur-off": 58276,
+  "blur-on": 58277,
+  "bolt": 59915,
+  "book": 59493,
+  "book-online": 61975,
+  "bookmark": 59494,
+  "bookmark-border": 59495,
+  "bookmark-outline": 59495,
+  "bookmarks": 59787,
+  "border-all": 57896,
+  "border-bottom": 57897,
+  "border-clear": 57898,
+  "border-color": 57899,
+  "border-horizontal": 57900,
+  "border-inner": 57901,
+  "border-left": 57902,
+  "border-outer": 57903,
+  "border-right": 57904,
+  "border-style": 57905,
+  "border-top": 57906,
+  "border-vertical": 57907,
+  "branding-watermark": 57451,
+  "breakfast-dining": 59988,
+  "brightness-1": 58278,
+  "brightness-2": 58279,
+  "brightness-3": 58280,
+  "brightness-4": 58281,
+  "brightness-5": 58282,
+  "brightness-6": 58283,
+  "brightness-7": 58284,
+  "brightness-auto": 57771,
+  "brightness-high": 57772,
+  "brightness-low": 57773,
+  "brightness-medium": 57774,
+  "broken-image": 58285,
+  "browser-not-supported": 61255,
+  "brunch-dining": 60019,
+  "brush": 58286,
+  "bubble-chart": 59101,
+  "bug-report": 59496,
+  "build": 59497,
+  "build-circle": 61256,
+  "burst-mode": 58428,
+  "bus-alert": 59791,
+  "business": 57519,
+  "business-center": 60223,
+  "cached": 59498,
+  "cake": 59369,
+  "calculate": 59999,
+  "calendar-today": 59701,
+  "calendar-view-day": 59702,
+  "call": 57520,
+  "call-end": 57521,
+  "call-made": 57522,
+  "call-merge": 57523,
+  "call-missed": 57524,
+  "call-missed-outgoing": 57572,
+  "call-received": 57525,
+  "call-split": 57526,
+  "call-to-action": 57452,
+  "camera": 58287,
+  "camera-alt": 58288,
+  "camera-enhance": 59644,
+  "camera-front": 58289,
+  "camera-rear": 58290,
+  "camera-roll": 58291,
+  "campaign": 61257,
+  "cancel": 58825,
+  "cancel-presentation": 57577,
+  "cancel-schedule-send": 59961,
+  "car-rental": 59989,
+  "car-repair": 59990,
+  "card-giftcard": 59638,
+  "card-membership": 59639,
+  "card-travel": 59640,
+  "carpenter": 61944,
+  "cases": 59794,
+  "casino": 60224,
+  "cast": 58119,
+  "cast-connected": 58120,
+  "cast-for-education": 61420,
+  "category": 58740,
+  "celebration": 60005,
+  "cell-wifi": 57580,
+  "center-focus-strong": 58292,
+  "center-focus-weak": 58293,
+  "change-history": 59499,
+  "charging-station": 61853,
+  "chat": 57527,
+  "chat-bubble": 57546,
+  "chat-bubble-outline": 57547,
+  "check": 58826,
+  "check-box": 59444,
+  "check-box-outline-blank": 59445,
+  "check-circle": 59500,
+  "check-circle-outline": 59693,
+  "checkroom": 61854,
+  "chevron-left": 58827,
+  "chevron-right": 58828,
+  "child-care": 60225,
+  "child-friendly": 60226,
+  "chrome-reader-mode": 59501,
+  "circle": 61258,
+  "circle-notifications": 59796,
+  "class": 59502,
+  "clean-hands": 61983,
+  "cleaning-services": 61695,
+  "clear": 57676,
+  "clear-all": 57528,
+  "close": 58829,
+  "close-fullscreen": 61903,
+  "closed-caption": 57372,
+  "closed-caption-disabled": 61916,
+  "closed-caption-off": 59798,
+  "cloud": 58045,
+  "cloud-circle": 58046,
+  "cloud-done": 58047,
+  "cloud-download": 58048,
+  "cloud-off": 58049,
+  "cloud-queue": 58050,
+  "cloud-upload": 58051,
+  "code": 59503,
+  "collections": 58294,
+  "collections-bookmark": 58417,
+  "color-lens": 58295,
+  "colorize": 58296,
+  "comment": 57529,
+  "comment-bank": 59982,
+  "commute": 59712,
+  "compare": 58297,
+  "compare-arrows": 59669,
+  "compass-calibration": 58748,
+  "compress": 59725,
+  "computer": 58122,
+  "confirmation-num": 58936,
+  "confirmation-number": 58936,
+  "connect-without-contact": 61987,
+  "connected-tv": 59800,
+  "construction": 59964,
+  "contact-mail": 57552,
+  "contact-page": 61998,
+  "contact-phone": 57551,
+  "contact-support": 59724,
+  "contactless": 60017,
+  "contacts": 57530,
+  "content-copy": 57677,
+  "content-cut": 57678,
+  "content-paste": 57679,
+  "control-camera": 57460,
+  "control-point": 58298,
+  "control-point-duplicate": 58299,
+  "copyright": 59660,
+  "coronavirus": 61985,
+  "corporate-fare": 61904,
+  "countertops": 61943,
+  "create": 57680,
+  "create-new-folder": 58060,
+  "credit-card": 59504,
+  "crop": 58302,
+  "crop-16-9": 58300,
+  "crop-3-2": 58301,
+  "crop-5-4": 58303,
+  "crop-7-5": 58304,
+  "crop-din": 58305,
+  "crop-free": 58306,
+  "crop-landscape": 58307,
+  "crop-original": 58308,
+  "crop-portrait": 58309,
+  "crop-rotate": 58423,
+  "crop-square": 58310,
+  "dangerous": 59802,
+  "dashboard": 59505,
+  "dashboard-customize": 59803,
+  "data-usage": 57775,
+  "date-range": 59670,
+  "deck": 59970,
+  "dehaze": 58311,
+  "delete": 59506,
+  "delete-forever": 59691,
+  "delete-outline": 59694,
+  "delete-sweep": 57708,
+  "delivery-dining": 60018,
+  "departure-board": 58742,
+  "description": 59507,
+  "design-services": 61706,
+  "desktop-access-disabled": 59805,
+  "desktop-mac": 58123,
+  "desktop-windows": 58124,
+  "details": 58312,
+  "developer-board": 58125,
+  "developer-mode": 57776,
+  "device-hub": 58165,
+  "device-thermostat": 57855,
+  "device-unknown": 58169,
+  "devices": 57777,
+  "devices-other": 58167,
+  "dialer-sip": 57531,
+  "dialpad": 57532,
+  "dinner-dining": 59991,
+  "directions": 58670,
+  "directions-bike": 58671,
+  "directions-boat": 58674,
+  "directions-bus": 58672,
+  "directions-car": 58673,
+  "directions-ferry": 58674,
+  "directions-off": 61711,
+  "directions-railway": 58676,
+  "directions-run": 58726,
+  "directions-subway": 58675,
+  "directions-train": 58676,
+  "directions-transit": 58677,
+  "directions-walk": 58678,
+  "dirty-lens": 61259,
+  "disabled-by-default": 62000,
+  "disc-full": 58896,
+  "dnd-forwardslash": 58897,
+  "dns": 59509,
+  "do-not-disturb": 58898,
+  "do-not-disturb-alt": 58897,
+  "do-not-disturb-off": 58947,
+  "do-not-disturb-on": 58948,
+  "do-not-step": 61855,
+  "do-not-touch": 61872,
+  "dock": 58126,
+  "domain": 59374,
+  "domain-disabled": 57583,
+  "domain-verification": 61260,
+  "done": 59510,
+  "done-all": 59511,
+  "done-outline": 59695,
+  "donut-large": 59671,
+  "donut-small": 59672,
+  "double-arrow": 59984,
+  "drafts": 57681,
+  "drag-handle": 57949,
+  "drag-indicator": 59717,
+  "drive-eta": 58899,
+  "drive-file-move": 58997,
+  "drive-file-move-outline": 59809,
+  "drive-file-rename-outline": 59810,
+  "drive-folder-upload": 59811,
+  "dry": 61875,
+  "dry-cleaning": 59992,
+  "duo": 59813,
+  "dvr": 57778,
+  "dynamic-feed": 59924,
+  "dynamic-form": 61887,
+  "east": 61919,
+  "eco": 59957,
+  "edit": 58313,
+  "edit-attributes": 58744,
+  "edit-location": 58728,
+  "edit-off": 59728,
+  "edit-road": 61261,
+  "eject": 59643,
+  "elderly": 61978,
+  "electric-bike": 60187,
+  "electric-car": 60188,
+  "electric-moped": 60189,
+  "electric-rickshaw": 60190,
+  "electric-scooter": 60191,
+  "electrical-services": 61698,
+  "elevator": 61856,
+  "email": 57534,
+  "emoji-emotions": 59938,
+  "emoji-events": 59939,
+  "emoji-flags": 59930,
+  "emoji-food-beverage": 59931,
+  "emoji-nature": 59932,
+  "emoji-objects": 59940,
+  "emoji-people": 59933,
+  "emoji-symbols": 59934,
+  "emoji-transportation": 59935,
+  "engineering": 59965,
+  "enhance-photo-translate": 59644,
+  "enhanced-encryption": 58943,
+  "equalizer": 57373,
+  "error": 57344,
+  "error-outline": 57345,
+  "escalator": 61857,
+  "escalator-warning": 61868,
+  "euro": 59925,
+  "euro-symbol": 59686,
+  "ev-station": 58733,
+  "event": 59512,
+  "event-available": 58900,
+  "event-busy": 58901,
+  "event-note": 58902,
+  "event-seat": 59651,
+  "exit-to-app": 59513,
+  "expand": 59727,
+  "expand-less": 58830,
+  "expand-more": 58831,
+  "explicit": 57374,
+  "explore": 59514,
+  "explore-off": 59816,
+  "exposure": 58314,
+  "exposure-minus-1": 58315,
+  "exposure-minus-2": 58316,
+  "exposure-neg-1": 58315,
+  "exposure-neg-2": 58316,
+  "exposure-plus-1": 58317,
+  "exposure-plus-2": 58318,
+  "exposure-zero": 58319,
+  "extension": 59515,
+  "face": 59516,
+  "face-retouching-natural": 61262,
+  "facebook": 62004,
+  "fact-check": 61637,
+  "family-restroom": 61858,
+  "fast-forward": 57375,
+  "fast-rewind": 57376,
+  "fastfood": 58746,
+  "favorite": 59517,
+  "favorite-border": 59518,
+  "favorite-outline": 59518,
+  "featured-play-list": 57453,
+  "featured-video": 57454,
+  "feedback": 59519,
+  "fence": 61942,
+  "festival": 60008,
+  "fiber-dvr": 57437,
+  "fiber-manual-record": 57441,
+  "fiber-new": 57438,
+  "fiber-pin": 57450,
+  "fiber-smart-record": 57442,
+  "file-copy": 57715,
+  "file-download": 58052,
+  "file-download-done": 59818,
+  "file-present": 59918,
+  "file-upload": 58054,
+  "filter": 58323,
+  "filter-1": 58320,
+  "filter-2": 58321,
+  "filter-3": 58322,
+  "filter-4": 58324,
+  "filter-5": 58325,
+  "filter-6": 58326,
+  "filter-7": 58327,
+  "filter-8": 58328,
+  "filter-9": 58329,
+  "filter-9-plus": 58330,
+  "filter-alt": 61263,
+  "filter-b-and-w": 58331,
+  "filter-center-focus": 58332,
+  "filter-drama": 58333,
+  "filter-frames": 58334,
+  "filter-hdr": 58335,
+  "filter-list": 57682,
+  "filter-list-alt": 59726,
+  "filter-none": 58336,
+  "filter-tilt-shift": 58338,
+  "filter-vintage": 58339,
+  "find-in-page": 59520,
+  "find-replace": 59521,
+  "fingerprint": 59661,
+  "fire-extinguisher": 61912,
+  "fire-hydrant": 61859,
+  "fireplace": 59971,
+  "first-page": 58844,
+  "fit-screen": 59920,
+  "fitness-center": 60227,
+  "flag": 57683,
+  "flaky": 61264,
+  "flare": 58340,
+  "flash-auto": 58341,
+  "flash-off": 58342,
+  "flash-on": 58343,
+  "flight": 58681,
+  "flight-land": 59652,
+  "flight-takeoff": 59653,
+  "flip": 58344,
+  "flip-camera-android": 59959,
+  "flip-camera-ios": 59960,
+  "flip-to-back": 59522,
+  "flip-to-front": 59523,
+  "folder": 58055,
+  "folder-open": 58056,
+  "folder-shared": 58057,
+  "folder-special": 58903,
+  "follow-the-signs": 61986,
+  "font-download": 57703,
+  "food-bank": 61938,
+  "format-align-center": 57908,
+  "format-align-justify": 57909,
+  "format-align-left": 57910,
+  "format-align-right": 57911,
+  "format-bold": 57912,
+  "format-clear": 57913,
+  "format-color-fill": 57914,
+  "format-color-reset": 57915,
+  "format-color-text": 57916,
+  "format-indent-decrease": 57917,
+  "format-indent-increase": 57918,
+  "format-italic": 57919,
+  "format-line-spacing": 57920,
+  "format-list-bulleted": 57921,
+  "format-list-numbered": 57922,
+  "format-list-numbered-rtl": 57959,
+  "format-paint": 57923,
+  "format-quote": 57924,
+  "format-shapes": 57950,
+  "format-size": 57925,
+  "format-strikethrough": 57926,
+  "format-textdirection-l-to-r": 57927,
+  "format-textdirection-r-to-l": 57928,
+  "format-underline": 57929,
+  "format-underlined": 57929,
+  "forum": 57535,
+  "forward": 57684,
+  "forward-10": 57430,
+  "forward-30": 57431,
+  "forward-5": 57432,
+  "forward-to-inbox": 61831,
+  "foundation": 61952,
+  "free-breakfast": 60228,
+  "fullscreen": 58832,
+  "fullscreen-exit": 58833,
+  "functions": 57930,
+  "g-translate": 59687,
+  "gamepad": 58127,
+  "games": 57377,
+  "gavel": 59662,
+  "gesture": 57685,
+  "get-app": 59524,
+  "gif": 59656,
+  "goat": 1114109,
+  "golf-course": 60229,
+  "gps-fixed": 57779,
+  "gps-not-fixed": 57780,
+  "gps-off": 57781,
+  "grade": 59525,
+  "gradient": 58345,
+  "grading": 59983,
+  "grain": 58346,
+  "graphic-eq": 57784,
+  "grass": 61957,
+  "grid-off": 58347,
+  "grid-on": 58348,
+  "grid-view": 59824,
+  "group": 59375,
+  "group-add": 59376,
+  "group-work": 59526,
+  "groups": 62003,
+  "hail": 59825,
+  "handyman": 61707,
+  "hardware": 59993,
+  "hd": 57426,
+  "hdr-enhanced-select": 61265,
+  "hdr-off": 58349,
+  "hdr-on": 58350,
+  "hdr-strong": 58353,
+  "hdr-weak": 58354,
+  "headset": 58128,
+  "headset-mic": 58129,
+  "headset-off": 58170,
+  "healing": 58355,
+  "hearing": 57379,
+  "hearing-disabled": 61700,
+  "height": 59926,
+  "help": 59527,
+  "help-center": 61888,
+  "help-outline": 59645,
+  "high-quality": 57380,
+  "highlight": 57951,
+  "highlight-alt": 61266,
+  "highlight-off": 59528,
+  "highlight-remove": 59528,
+  "history": 59529,
+  "history-edu": 59966,
+  "history-toggle-off": 61821,
+  "home": 59530,
+  "home-filled": 59826,
+  "home-repair-service": 61696,
+  "home-work": 59913,
+  "horizontal-distribute": 57364,
+  "horizontal-rule": 61704,
+  "horizontal-split": 59719,
+  "hot-tub": 60230,
+  "hotel": 58682,
+  "hourglass-bottom": 59996,
+  "hourglass-disabled": 61267,
+  "hourglass-empty": 59531,
+  "hourglass-full": 59532,
+  "hourglass-top": 59995,
+  "house": 59972,
+  "house-siding": 61954,
+  "how-to-reg": 57716,
+  "how-to-vote": 57717,
+  "http": 59650,
+  "https": 59533,
+  "hvac": 61710,
+  "icecream": 60009,
+  "image": 58356,
+  "image-aspect-ratio": 58357,
+  "image-not-supported": 61718,
+  "image-search": 58431,
+  "imagesearch-roller": 59828,
+  "import-contacts": 57568,
+  "import-export": 57539,
+  "important-devices": 59666,
+  "inbox": 57686,
+  "indeterminate-check-box": 59657,
+  "info": 59534,
+  "info-outline": 59535,
+  "input": 59536,
+  "insert-chart": 57931,
+  "insert-chart-outlined": 57962,
+  "insert-comment": 57932,
+  "insert-drive-file": 57933,
+  "insert-emoticon": 57934,
+  "insert-invitation": 57935,
+  "insert-link": 57936,
+  "insert-photo": 57937,
+  "insights": 61586,
+  "integration-instructions": 61268,
+  "inventory": 57721,
+  "invert-colors": 59537,
+  "invert-colors-off": 57540,
+  "invert-colors-on": 59537,
+  "ios-share": 59064,
+  "iso": 58358,
+  "keyboard": 58130,
+  "keyboard-arrow-down": 58131,
+  "keyboard-arrow-left": 58132,
+  "keyboard-arrow-right": 58133,
+  "keyboard-arrow-up": 58134,
+  "keyboard-backspace": 58135,
+  "keyboard-capslock": 58136,
+  "keyboard-control": 58835,
+  "keyboard-hide": 58138,
+  "keyboard-return": 58139,
+  "keyboard-tab": 58140,
+  "keyboard-voice": 58141,
+  "king-bed": 59973,
+  "kitchen": 60231,
+  "label": 59538,
+  "label-important": 59703,
+  "label-important-outline": 59720,
+  "label-off": 59830,
+  "label-outline": 59539,
+  "landscape": 58359,
+  "language": 59540,
+  "laptop": 58142,
+  "laptop-chromebook": 58143,
+  "laptop-mac": 58144,
+  "laptop-windows": 58145,
+  "last-page": 58845,
+  "launch": 59541,
+  "layers": 58683,
+  "layers-clear": 58684,
+  "leaderboard": 61964,
+  "leak-add": 58360,
+  "leak-remove": 58361,
+  "leave-bags-at-home": 61979,
+  "legend-toggle": 61723,
+  "lens": 58362,
+  "library-add": 57390,
+  "library-add-check": 59831,
+  "library-books": 57391,
+  "library-music": 57392,
+  "lightbulb": 57584,
+  "lightbulb-outline": 59663,
+  "line-style": 59673,
+  "line-weight": 59674,
+  "linear-scale": 57952,
+  "link": 57687,
+  "link-off": 57711,
+  "linked-camera": 58424,
+  "liquor": 60000,
+  "list": 59542,
+  "list-alt": 57582,
+  "live-help": 57542,
+  "live-tv": 58937,
+  "local-activity": 58687,
+  "local-airport": 58685,
+  "local-atm": 58686,
+  "local-attraction": 58687,
+  "local-bar": 58688,
+  "local-cafe": 58689,
+  "local-car-wash": 58690,
+  "local-convenience-store": 58691,
+  "local-dining": 58710,
+  "local-drink": 58692,
+  "local-fire-department": 61269,
+  "local-florist": 58693,
+  "local-gas-station": 58694,
+  "local-grocery-store": 58695,
+  "local-hospital": 58696,
+  "local-hotel": 58697,
+  "local-laundry-service": 58698,
+  "local-library": 58699,
+  "local-mall": 58700,
+  "local-movies": 58701,
+  "local-offer": 58702,
+  "local-parking": 58703,
+  "local-pharmacy": 58704,
+  "local-phone": 58705,
+  "local-pizza": 58706,
+  "local-play": 58707,
+  "local-police": 61270,
+  "local-post-office": 58708,
+  "local-print-shop": 58709,
+  "local-printshop": 58709,
+  "local-restaurant": 58710,
+  "local-see": 58711,
+  "local-shipping": 58712,
+  "local-taxi": 58713,
+  "location-city": 59377,
+  "location-disabled": 57782,
+  "location-history": 58714,
+  "location-off": 57543,
+  "location-on": 57544,
+  "location-pin": 61915,
+  "location-searching": 57783,
+  "lock": 59543,
+  "lock-clock": 61271,
+  "lock-open": 59544,
+  "lock-outline": 59545,
+  "login": 60023,
+  "logout": 59834,
+  "looks": 58364,
+  "looks-3": 58363,
+  "looks-4": 58365,
+  "looks-5": 58366,
+  "looks-6": 58367,
+  "looks-one": 58368,
+  "looks-two": 58369,
+  "loop": 57384,
+  "loupe": 58370,
+  "low-priority": 57709,
+  "loyalty": 59546,
+  "luggage": 62005,
+  "lunch-dining": 60001,
+  "mail": 57688,
+  "mail-outline": 57569,
+  "map": 58715,
+  "maps-ugc": 61272,
+  "margin": 59835,
+  "mark-as-unread": 59836,
+  "mark-chat-read": 61835,
+  "mark-chat-unread": 61833,
+  "mark-email-read": 61836,
+  "mark-email-unread": 61834,
+  "markunread": 57689,
+  "markunread-mailbox": 59547,
+  "masks": 61976,
+  "maximize": 59696,
+  "mediation": 61351,
+  "medical-services": 61705,
+  "meeting-room": 60239,
+  "memory": 58146,
+  "menu": 58834,
+  "menu-book": 59929,
+  "menu-open": 59837,
+  "merge-type": 57938,
+  "message": 57545,
+  "messenger": 57546,
+  "messenger-outline": 57547,
+  "mic": 57385,
+  "mic-external-off": 61273,
+  "mic-external-on": 61274,
+  "mic-none": 57386,
+  "mic-off": 57387,
+  "microwave": 61956,
+  "military-tech": 59967,
+  "minimize": 59697,
+  "miscellaneous-services": 61708,
+  "missed-video-call": 57459,
+  "mms": 58904,
+  "mobile-friendly": 57856,
+  "mobile-off": 57857,
+  "mobile-screen-share": 57575,
+  "mode-comment": 57939,
+  "mode-edit": 57940,
+  "model-training": 61647,
+  "monetization-on": 57955,
+  "money": 58749,
+  "money-off": 57948,
+  "monitor": 61275,
+  "monochrome-photos": 58371,
+  "mood": 59378,
+  "mood-bad": 59379,
+  "moped": 60200,
+  "more": 58905,
+  "more-horiz": 58835,
+  "more-time": 59997,
+  "more-vert": 58836,
+  "motion-photos-off": 59840,
+  "motion-photos-on": 59841,
+  "motion-photos-pause": 61991,
+  "motion-photos-paused": 59842,
+  "motorcycle": 59675,
+  "mouse": 58147,
+  "move-to-inbox": 57704,
+  "movie": 57388,
+  "movie-creation": 58372,
+  "movie-filter": 58426,
+  "mp": 59843,
+  "multiline-chart": 59103,
+  "multiple-stop": 61881,
+  "multitrack-audio": 57784,
+  "museum": 59958,
+  "music-note": 58373,
+  "music-off": 58432,
+  "music-video": 57443,
+  "my-library-add": 57390,
+  "my-library-books": 57391,
+  "my-library-music": 57392,
+  "my-location": 58716,
+  "nat": 61276,
+  "nature": 58374,
+  "nature-people": 58375,
+  "navigate-before": 58376,
+  "navigate-next": 58377,
+  "navigation": 58717,
+  "near-me": 58729,
+  "near-me-disabled": 61935,
+  "network-cell": 57785,
+  "network-check": 58944,
+  "network-locked": 58906,
+  "network-wifi": 57786,
+  "new-releases": 57393,
+  "next-plan": 61277,
+  "next-week": 57706,
+  "nfc": 57787,
+  "night-shelter": 61937,
+  "nightlife": 60002,
+  "nightlight-round": 61278,
+  "nights-stay": 59974,
+  "no-backpack": 62007,
+  "no-cell": 61860,
+  "no-drinks": 61861,
+  "no-encryption": 58945,
+  "no-flash": 61862,
+  "no-food": 61863,
+  "no-luggage": 62011,
+  "no-meals": 61910,
+  "no-meals-ouline": 61993,
+  "no-meeting-room": 60238,
+  "no-photography": 61864,
+  "no-sim": 57548,
+  "no-stroller": 61871,
+  "no-transfer": 61909,
+  "north": 61920,
+  "north-east": 61921,
+  "north-west": 61922,
+  "not-accessible": 61694,
+  "not-interested": 57395,
+  "not-listed-location": 58741,
+  "not-started": 61649,
+  "note": 57455,
+  "note-add": 59548,
+  "notes": 57964,
+  "notification-important": 57348,
+  "notifications": 59380,
+  "notifications-active": 59383,
+  "notifications-none": 59381,
+  "notifications-off": 59382,
+  "notifications-on": 59383,
+  "notifications-paused": 59384,
+  "now-wallpaper": 57788,
+  "now-widgets": 57789,
+  "offline-bolt": 59698,
+  "offline-pin": 59658,
+  "offline-share": 59845,
+  "ondemand-video": 58938,
+  "online-prediction": 61675,
+  "opacity": 59676,
+  "open-in-browser": 59549,
+  "open-in-full": 61902,
+  "open-in-new": 59550,
+  "open-with": 59551,
+  "outbond": 61992,
+  "outbox": 61279,
+  "outdoor-grill": 59975,
+  "outgoing-mail": 61650,
+  "outlet": 61908,
+  "outlined-flag": 57710,
+  "padding": 59848,
+  "pages": 59385,
+  "pageview": 59552,
+  "palette": 58378,
+  "pan-tool": 59685,
+  "panorama": 58379,
+  "panorama-fish-eye": 58380,
+  "panorama-fisheye": 58380,
+  "panorama-horizontal": 58381,
+  "panorama-horizontal-select": 61280,
+  "panorama-photosphere": 59849,
+  "panorama-photosphere-select": 59850,
+  "panorama-vertical": 58382,
+  "panorama-vertical-select": 61281,
+  "panorama-wide-angle": 58383,
+  "panorama-wide-angle-select": 61282,
+  "park": 60003,
+  "party-mode": 59386,
+  "pause": 57396,
+  "pause-circle-filled": 57397,
+  "pause-circle-outline": 57398,
+  "pause-presentation": 57578,
+  "payment": 59553,
+  "payments": 61283,
+  "pedal-bike": 60201,
+  "pending": 61284,
+  "pending-actions": 61883,
+  "people": 59387,
+  "people-alt": 59937,
+  "people-outline": 59388,
+  "perm-camera-mic": 59554,
+  "perm-contact-cal": 59555,
+  "perm-contact-calendar": 59555,
+  "perm-data-setting": 59556,
+  "perm-device-info": 59557,
+  "perm-device-information": 59557,
+  "perm-identity": 59558,
+  "perm-media": 59559,
+  "perm-phone-msg": 59560,
+  "perm-scan-wifi": 59561,
+  "person": 59389,
+  "person-add": 59390,
+  "person-add-alt": 59981,
+  "person-add-alt-1": 61285,
+  "person-add-disabled": 59851,
+  "person-outline": 59391,
+  "person-pin": 58714,
+  "person-pin-circle": 58730,
+  "person-remove": 61286,
+  "person-remove-alt-1": 61287,
+  "person-search": 61702,
+  "personal-video": 58939,
+  "pest-control": 61690,
+  "pest-control-rodent": 61693,
+  "pets": 59677,
+  "phone": 57549,
+  "phone-android": 58148,
+  "phone-bluetooth-speaker": 58907,
+  "phone-callback": 58953,
+  "phone-disabled": 59852,
+  "phone-enabled": 59853,
+  "phone-forwarded": 58908,
+  "phone-in-talk": 58909,
+  "phone-iphone": 58149,
+  "phone-locked": 58910,
+  "phone-missed": 58911,
+  "phone-paused": 58912,
+  "phonelink": 58150,
+  "phonelink-erase": 57563,
+  "phonelink-lock": 57564,
+  "phonelink-off": 58151,
+  "phonelink-ring": 57565,
+  "phonelink-setup": 57566,
+  "photo": 58384,
+  "photo-album": 58385,
+  "photo-camera": 58386,
+  "photo-camera-back": 61288,
+  "photo-camera-front": 61289,
+  "photo-filter": 58427,
+  "photo-library": 58387,
+  "photo-size-select-actual": 58418,
+  "photo-size-select-large": 58419,
+  "photo-size-select-small": 58420,
+  "picture-as-pdf": 58389,
+  "picture-in-picture": 59562,
+  "picture-in-picture-alt": 59665,
+  "pie-chart": 59076,
+  "pie-chart-outlined": 59077,
+  "pin-drop": 58718,
+  "pivot-table-chart": 59854,
+  "place": 58719,
+  "plagiarism": 59994,
+  "play-arrow": 57399,
+  "play-circle-fill": 57400,
+  "play-circle-filled": 57400,
+  "play-circle-outline": 57401,
+  "play-disabled": 61290,
+  "play-for-work": 59654,
+  "playlist-add": 57403,
+  "playlist-add-check": 57445,
+  "playlist-play": 57439,
+  "plumbing": 61703,
+  "plus-one": 59392,
+  "point-of-sale": 61822,
+  "policy": 59927,
+  "poll": 59393,
+  "polymer": 59563,
+  "pool": 60232,
+  "portable-wifi-off": 57550,
+  "portrait": 58390,
+  "post-add": 59936,
+  "power": 58940,
+  "power-input": 58166,
+  "power-off": 58950,
+  "power-settings-new": 59564,
+  "pregnant-woman": 59678,
+  "present-to-all": 57567,
+  "preview": 61893,
+  "print": 59565,
+  "print-disabled": 59855,
+  "priority-high": 58949,
+  "privacy-tip": 61660,
+  "psychology": 59978,
+  "public": 59403,
+  "public-off": 61898,
+  "publish": 57941,
+  "published-with-changes": 62002,
+  "push-pin": 61709,
+  "qr-code": 61291,
+  "qr-code-2": 57354,
+  "qr-code-scanner": 61958,
+  "query-builder": 59566,
+  "question-answer": 59567,
+  "queue": 57404,
+  "queue-music": 57405,
+  "queue-play-next": 57446,
+  "quick-contacts-dialer": 57551,
+  "quick-contacts-mail": 57552,
+  "quickreply": 61292,
+  "radio": 57406,
+  "radio-button-checked": 59447,
+  "radio-button-off": 59446,
+  "radio-button-on": 59447,
+  "radio-button-unchecked": 59446,
+  "railway-alert": 59857,
+  "ramen-dining": 60004,
+  "rate-review": 58720,
+  "read-more": 61293,
+  "receipt": 59568,
+  "receipt-long": 61294,
+  "recent-actors": 57407,
+  "recommend": 59858,
+  "record-voice-over": 59679,
+  "redeem": 59569,
+  "redo": 57690,
+  "reduce-capacity": 61980,
+  "refresh": 58837,
+  "remove": 57691,
+  "remove-circle": 57692,
+  "remove-circle-outline": 57693,
+  "remove-done": 59859,
+  "remove-from-queue": 57447,
+  "remove-moderator": 59860,
+  "remove-red-eye": 58391,
+  "remove-shopping-cart": 59688,
+  "reorder": 59646,
+  "repeat": 57408,
+  "repeat-on": 59862,
+  "repeat-one": 57409,
+  "repeat-one-on": 59863,
+  "replay": 57410,
+  "replay-10": 57433,
+  "replay-30": 57434,
+  "replay-5": 57435,
+  "replay-circle-filled": 59864,
+  "reply": 57694,
+  "reply-all": 57695,
+  "report": 57696,
+  "report-off": 57712,
+  "report-problem": 59570,
+  "request-page": 61996,
+  "request-quote": 61878,
+  "reset-tv": 59865,
+  "restaurant": 58732,
+  "restaurant-menu": 58721,
+  "restore": 59571,
+  "restore-from-trash": 59704,
+  "restore-page": 59689,
+  "rice-bowl": 61941,
+  "ring-volume": 57553,
+  "roofing": 61953,
+  "room": 59572,
+  "room-preferences": 61880,
+  "room-service": 60233,
+  "rotate-90-degrees-ccw": 58392,
+  "rotate-left": 58393,
+  "rotate-right": 58394,
+  "rounded-corner": 59680,
+  "router": 58152,
+  "rowing": 59681,
+  "rss-feed": 57573,
+  "rtt": 59821,
+  "rule": 61890,
+  "rule-folder": 61897,
+  "run-circle": 61295,
+  "rv-hookup": 58946,
+  "sanitizer": 61981,
+  "satellite": 58722,
+  "save": 57697,
+  "save-alt": 57713,
+  "saved-search": 59921,
+  "scanner": 58153,
+  "scatter-plot": 57960,
+  "schedule": 59573,
+  "schedule-send": 59914,
+  "school": 59404,
+  "science": 59979,
+  "score": 57961,
+  "screen-lock-landscape": 57790,
+  "screen-lock-portrait": 57791,
+  "screen-lock-rotation": 57792,
+  "screen-rotation": 57793,
+  "screen-search-desktop": 61296,
+  "screen-share": 57570,
+  "sd": 59869,
+  "sd-card": 58915,
+  "sd-storage": 57794,
+  "search": 59574,
+  "search-off": 60022,
+  "security": 58154,
+  "segment": 59723,
+  "select-all": 57698,
+  "self-improvement": 60024,
+  "send": 57699,
+  "send-and-archive": 59916,
+  "send-to-mobile": 61532,
+  "sensor-door": 61877,
+  "sensor-window": 61876,
+  "sentiment-dissatisfied": 59409,
+  "sentiment-neutral": 59410,
+  "sentiment-satisfied": 59411,
+  "sentiment-satisfied-alt": 57581,
+  "sentiment-very-dissatisfied": 59412,
+  "sentiment-very-satisfied": 59413,
+  "set-meal": 61930,
+  "settings": 59576,
+  "settings-applications": 59577,
+  "settings-backup-restore": 59578,
+  "settings-bluetooth": 59579,
+  "settings-brightness": 59581,
+  "settings-cell": 59580,
+  "settings-display": 59581,
+  "settings-ethernet": 59582,
+  "settings-input-antenna": 59583,
+  "settings-input-component": 59584,
+  "settings-input-composite": 59585,
+  "settings-input-hdmi": 59586,
+  "settings-input-svideo": 59587,
+  "settings-overscan": 59588,
+  "settings-phone": 59589,
+  "settings-power": 59590,
+  "settings-remote": 59591,
+  "settings-system-daydream": 57795,
+  "settings-voice": 59592,
+  "share": 59405,
+  "shield": 59872,
+  "shop": 59593,
+  "shop-two": 59594,
+  "shopping-bag": 61900,
+  "shopping-basket": 59595,
+  "shopping-cart": 59596,
+  "short-text": 57953,
+  "show-chart": 59105,
+  "shuffle": 57411,
+  "shuffle-on": 59873,
+  "shutter-speed": 58429,
+  "sick": 61984,
+  "signal-cellular-0-bar": 61608,
+  "signal-cellular-4-bar": 57800,
+  "signal-cellular-alt": 57858,
+  "signal-cellular-connected-no-internet-4-bar": 57805,
+  "signal-cellular-no-sim": 57806,
+  "signal-cellular-null": 57807,
+  "signal-cellular-off": 57808,
+  "signal-wifi-0-bar": 61616,
+  "signal-wifi-4-bar": 57816,
+  "signal-wifi-4-bar-lock": 57817,
+  "signal-wifi-off": 57818,
+  "sim-card": 58155,
+  "sim-card-alert": 58916,
+  "single-bed": 59976,
+  "skip-next": 57412,
+  "skip-previous": 57413,
+  "slideshow": 58395,
+  "slow-motion-video": 57448,
+  "smart-button": 61889,
+  "smartphone": 58156,
+  "smoke-free": 60234,
+  "smoking-rooms": 60235,
+  "sms": 58917,
+  "sms-failed": 58918,
+  "snippet-folder": 61895,
+  "snooze": 57414,
+  "soap": 61874,
+  "sort": 57700,
+  "sort-by-alpha": 57427,
+  "source": 61892,
+  "south": 61923,
+  "south-east": 61924,
+  "south-west": 61925,
+  "spa": 60236,
+  "space-bar": 57942,
+  "speaker": 58157,
+  "speaker-group": 58158,
+  "speaker-notes": 59597,
+  "speaker-notes-off": 59690,
+  "speaker-phone": 57554,
+  "speed": 59876,
+  "spellcheck": 59598,
+  "sports": 59952,
+  "sports-bar": 61939,
+  "sports-baseball": 59985,
+  "sports-basketball": 59942,
+  "sports-cricket": 59943,
+  "sports-esports": 59944,
+  "sports-football": 59945,
+  "sports-golf": 59946,
+  "sports-handball": 59955,
+  "sports-hockey": 59947,
+  "sports-kabaddi": 59956,
+  "sports-mma": 59948,
+  "sports-motorsports": 59949,
+  "sports-rugby": 59950,
+  "sports-soccer": 59951,
+  "sports-tennis": 59954,
+  "sports-volleyball": 59953,
+  "square-foot": 59977,
+  "stacked-bar-chart": 59878,
+  "stacked-line-chart": 61995,
+  "stairs": 61865,
+  "star": 59448,
+  "star-border": 59450,
+  "star-half": 59449,
+  "star-outline": 61551,
+  "star-rate": 61676,
+  "stars": 59600,
+  "stay-current-landscape": 57555,
+  "stay-current-portrait": 57556,
+  "stay-primary-landscape": 57557,
+  "stay-primary-portrait": 57558,
+  "sticky-note-2": 61948,
+  "stop": 57415,
+  "stop-circle": 61297,
+  "stop-screen-share": 57571,
+  "storage": 57819,
+  "store": 59601,
+  "store-mall-directory": 58723,
+  "storefront": 59922,
+  "straighten": 58396,
+  "stream": 59881,
+  "streetview": 58734,
+  "strikethrough-s": 57943,
+  "stroller": 61870,
+  "style": 58397,
+  "subdirectory-arrow-left": 58841,
+  "subdirectory-arrow-right": 58842,
+  "subject": 59602,
+  "subscript": 61713,
+  "subscriptions": 57444,
+  "subtitles": 57416,
+  "subtitles-off": 61298,
+  "subway": 58735,
+  "superscript": 61714,
+  "supervised-user-circle": 59705,
+  "supervisor-account": 59603,
+  "support": 61299,
+  "support-agent": 61666,
+  "surround-sound": 57417,
+  "swap-calls": 57559,
+  "swap-horiz": 59604,
+  "swap-horizontal-circle": 59699,
+  "swap-vert": 59605,
+  "swap-vert-circle": 59606,
+  "swap-vertical-circle": 59606,
+  "swipe": 59884,
+  "switch-account": 59885,
+  "switch-camera": 58398,
+  "switch-left": 61905,
+  "switch-right": 61906,
+  "switch-video": 58399,
+  "sync": 58919,
+  "sync-alt": 59928,
+  "sync-disabled": 58920,
+  "sync-problem": 58921,
+  "system-update": 58922,
+  "system-update-alt": 59607,
+  "system-update-tv": 59607,
+  "tab": 59608,
+  "tab-unselected": 59609,
+  "table-chart": 57957,
+  "table-rows": 61697,
+  "table-view": 61886,
+  "tablet": 58159,
+  "tablet-android": 58160,
+  "tablet-mac": 58161,
+  "tag": 59887,
+  "tag-faces": 58400,
+  "takeout-dining": 60020,
+  "tap-and-play": 58923,
+  "tapas": 61929,
+  "taxi-alert": 61300,
+  "terrain": 58724,
+  "text-fields": 57954,
+  "text-format": 57701,
+  "text-rotate-up": 59706,
+  "text-rotate-vertical": 59707,
+  "text-rotation-angledown": 59708,
+  "text-rotation-angleup": 59709,
+  "text-rotation-down": 59710,
+  "text-rotation-none": 59711,
+  "text-snippet": 61894,
+  "textsms": 57560,
+  "texture": 58401,
+  "theater-comedy": 60006,
+  "theaters": 59610,
+  "thumb-down": 59611,
+  "thumb-down-alt": 59414,
+  "thumb-down-off-alt": 59890,
+  "thumb-up": 59612,
+  "thumb-up-alt": 59415,
+  "thumb-up-off-alt": 59891,
+  "thumbs-up-down": 59613,
+  "time-to-leave": 58924,
+  "timelapse": 58402,
+  "timeline": 59682,
+  "timer": 58405,
+  "timer-10": 58403,
+  "timer-3": 58404,
+  "timer-off": 58406,
+  "title": 57956,
+  "toc": 59614,
+  "today": 59615,
+  "toggle-off": 59893,
+  "toggle-on": 59894,
+  "toll": 59616,
+  "tonality": 58407,
+  "topic": 61896,
+  "touch-app": 59667,
+  "tour": 61301,
+  "toys": 58162,
+  "track-changes": 59617,
+  "traffic": 58725,
+  "train": 58736,
+  "tram": 58737,
+  "transfer-within-a-station": 58738,
+  "transform": 58408,
+  "transit-enterexit": 58745,
+  "translate": 59618,
+  "trending-down": 59619,
+  "trending-flat": 59620,
+  "trending-neutral": 59620,
+  "trending-up": 59621,
+  "trip-origin": 58747,
+  "tty": 61866,
+  "tune": 58409,
+  "turned-in": 59622,
+  "turned-in-not": 59623,
+  "tv": 58163,
+  "tv-off": 58951,
+  "two-wheeler": 59897,
+  "umbrella": 61869,
+  "unarchive": 57705,
+  "undo": 57702,
+  "unfold-less": 58838,
+  "unfold-more": 58839,
+  "unpublished": 62006,
+  "unsubscribe": 57579,
+  "update": 59683,
+  "update-disabled": 57461,
+  "upgrade": 61691,
+  "upload-file": 59900,
+  "usb": 57824,
+  "verified": 61302,
+  "verified-user": 59624,
+  "vertical-align-bottom": 57944,
+  "vertical-align-center": 57945,
+  "vertical-align-top": 57946,
+  "vertical-distribute": 57462,
+  "vertical-split": 59721,
+  "vibration": 58925,
+  "video-call": 57456,
+  "video-collection": 57418,
+  "video-label": 57457,
+  "video-library": 57418,
+  "video-settings": 60021,
+  "videocam": 57419,
+  "videocam-off": 57420,
+  "videogame-asset": 58168,
+  "view-agenda": 59625,
+  "view-array": 59626,
+  "view-carousel": 59627,
+  "view-column": 59628,
+  "view-comfortable": 58410,
+  "view-comfy": 58410,
+  "view-compact": 58411,
+  "view-day": 59629,
+  "view-headline": 59630,
+  "view-in-ar": 59902,
+  "view-list": 59631,
+  "view-module": 59632,
+  "view-quilt": 59633,
+  "view-sidebar": 61716,
+  "view-stream": 59634,
+  "view-week": 59635,
+  "vignette": 58421,
+  "visibility": 59636,
+  "visibility-off": 59637,
+  "voice-chat": 58926,
+  "voice-over-off": 59722,
+  "voicemail": 57561,
+  "volume-down": 57421,
+  "volume-mute": 57422,
+  "volume-off": 57423,
+  "volume-up": 57424,
+  "volunteer-activism": 60016,
+  "vpn-key": 57562,
+  "vpn-lock": 58927,
+  "wallet-giftcard": 59638,
+  "wallet-membership": 59639,
+  "wallet-travel": 59640,
+  "wallpaper": 57788,
+  "warning": 57346,
+  "wash": 61873,
+  "watch": 58164,
+  "watch-later": 59684,
+  "water-damage": 61955,
+  "waterfall-chart": 59904,
+  "waves": 57718,
+  "wb-auto": 58412,
+  "wb-cloudy": 58413,
+  "wb-incandescent": 58414,
+  "wb-iridescent": 58422,
+  "wb-shade": 59905,
+  "wb-sunny": 58416,
+  "wb-twighlight": 59906,
+  "wc": 58941,
+  "web": 57425,
+  "web-asset": 57449,
+  "weekend": 57707,
+  "west": 61926,
+  "whatshot": 59406,
+  "wheelchair-pickup": 61867,
+  "where-to-vote": 57719,
+  "widgets": 57789,
+  "wifi": 58942,
+  "wifi-calling": 61303,
+  "wifi-lock": 57825,
+  "wifi-off": 58952,
+  "wifi-protected-setup": 61692,
+  "wifi-tethering": 57826,
+  "wine-bar": 61928,
+  "work": 59641,
+  "work-off": 59714,
+  "work-outline": 59715,
+  "workspaces-filled": 59917,
+  "workspaces-outline": 59919,
+  "wrap-text": 57947,
+  "wrong-location": 61304,
+  "wysiwyg": 61891,
+  "youtube-searched-for": 59642,
+  "zoom-in": 59647,
+  "zoom-out": 59648,
+  "zoom-out-map": 58731
+}

+ 186 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_octicons.json

@@ -0,0 +1,186 @@
+{
+  "alert": 61696,
+  "archive": 61697,
+  "arrow-both": 61698,
+  "arrow-down": 61699,
+  "arrow-left": 61700,
+  "arrow-right": 61701,
+  "arrow-small-down": 61702,
+  "arrow-small-left": 61703,
+  "arrow-small-right": 61704,
+  "arrow-small-up": 61705,
+  "arrow-up": 61706,
+  "beaker": 61707,
+  "bell": 61708,
+  "bold": 61709,
+  "book": 61710,
+  "bookmark": 61711,
+  "briefcase": 61712,
+  "broadcast": 61713,
+  "browser": 61714,
+  "bug": 61715,
+  "calendar": 61716,
+  "check": 61717,
+  "checklist": 61718,
+  "chevron-down": 61719,
+  "chevron-left": 61720,
+  "chevron-right": 61721,
+  "chevron-up": 61722,
+  "circle-slash": 61723,
+  "circuit-board": 61724,
+  "clippy": 61725,
+  "clock": 61726,
+  "cloud-download": 61727,
+  "cloud-upload": 61728,
+  "code": 61729,
+  "comment": 61730,
+  "comment-discussion": 61731,
+  "credit-card": 61732,
+  "dash": 61733,
+  "dashboard": 61734,
+  "database": 61735,
+  "desktop-download": 61736,
+  "device-camera": 61737,
+  "device-camera-video": 61738,
+  "device-desktop": 61739,
+  "device-mobile": 61740,
+  "diff": 61741,
+  "diff-added": 61742,
+  "diff-ignored": 61743,
+  "diff-modified": 61744,
+  "diff-removed": 61745,
+  "diff-renamed": 61746,
+  "ellipsis": 61747,
+  "eye": 61748,
+  "eye-closed": 61749,
+  "file": 61750,
+  "file-binary": 61751,
+  "file-code": 61752,
+  "file-directory": 61753,
+  "file-media": 61754,
+  "file-pdf": 61755,
+  "file-submodule": 61756,
+  "file-symlink-directory": 61757,
+  "file-symlink-file": 61758,
+  "file-zip": 61759,
+  "flame": 61760,
+  "fold": 61761,
+  "fold-down": 61762,
+  "fold-up": 61763,
+  "gear": 61764,
+  "gift": 61765,
+  "gist": 61766,
+  "gist-secret": 61767,
+  "git-branch": 61768,
+  "git-commit": 61769,
+  "git-compare": 61770,
+  "git-merge": 61771,
+  "git-pull-request": 61772,
+  "github-action": 61773,
+  "globe": 61774,
+  "grabber": 61775,
+  "graph": 61776,
+  "heart": 61777,
+  "history": 61778,
+  "home": 61779,
+  "horizontal-rule": 61780,
+  "hubot": 61781,
+  "inbox": 61782,
+  "info": 61783,
+  "issue-closed": 61784,
+  "issue-opened": 61785,
+  "issue-reopened": 61786,
+  "italic": 61787,
+  "jersey": 61788,
+  "kebab-horizontal": 61789,
+  "kebab-vertical": 61790,
+  "key": 61791,
+  "keyboard": 61792,
+  "law": 61793,
+  "light-bulb": 61794,
+  "link": 61795,
+  "link-external": 61796,
+  "list-ordered": 61797,
+  "list-unordered": 61798,
+  "location": 61799,
+  "lock": 61800,
+  "logo-gist": 61801,
+  "logo-github": 61802,
+  "mail": 61803,
+  "mail-read": 61804,
+  "mark-github": 61805,
+  "markdown": 61806,
+  "megaphone": 61807,
+  "mention": 61808,
+  "milestone": 61809,
+  "mirror": 61810,
+  "mortar-board": 61811,
+  "mute": 61812,
+  "no-newline": 61813,
+  "note": 61814,
+  "octoface": 61815,
+  "organization": 61816,
+  "package": 61817,
+  "paintcan": 61818,
+  "pencil": 61819,
+  "person": 61820,
+  "pin": 61821,
+  "play": 61822,
+  "plug": 61823,
+  "plus": 61824,
+  "plus-small": 61825,
+  "primitive-dot": 61826,
+  "primitive-square": 61827,
+  "project": 61828,
+  "pulse": 61829,
+  "question": 61830,
+  "quote": 61831,
+  "radio-tower": 61832,
+  "reply": 61833,
+  "repo": 61834,
+  "repo-clone": 61835,
+  "repo-force-push": 61836,
+  "repo-forked": 61837,
+  "repo-pull": 61838,
+  "repo-push": 61839,
+  "report": 61840,
+  "request-changes": 61841,
+  "rocket": 61842,
+  "rss": 61843,
+  "ruby": 61844,
+  "screen-full": 61845,
+  "screen-normal": 61846,
+  "search": 61847,
+  "server": 61848,
+  "settings": 61849,
+  "shield": 61850,
+  "sign-in": 61851,
+  "sign-out": 61852,
+  "smiley": 61853,
+  "squirrel": 61854,
+  "star": 61855,
+  "stop": 61856,
+  "sync": 61857,
+  "tag": 61858,
+  "tasklist": 61859,
+  "telescope": 61860,
+  "terminal": 61861,
+  "text-size": 61862,
+  "three-bars": 61863,
+  "thumbsdown": 61864,
+  "thumbsup": 61865,
+  "tools": 61866,
+  "trashcan": 61867,
+  "triangle-down": 61868,
+  "triangle-left": 61869,
+  "triangle-right": 61870,
+  "triangle-up": 61871,
+  "unfold": 61872,
+  "unmute": 61873,
+  "unverified": 61874,
+  "verified": 61875,
+  "versions": 61876,
+  "watch": 61877,
+  "x": 61878,
+  "zap": 61879
+}

+ 191 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_simplelineicons.json

@@ -0,0 +1,191 @@
+{
+  "user": 57349,
+  "people": 57345,
+  "user-female": 57344,
+  "user-follow": 57346,
+  "user-following": 57347,
+  "user-unfollow": 57348,
+  "login": 57446,
+  "logout": 57445,
+  "emotsmile": 57377,
+  "phone": 58880,
+  "call-end": 57416,
+  "call-in": 57415,
+  "call-out": 57414,
+  "map": 57395,
+  "location-pin": 57494,
+  "direction": 57410,
+  "directions": 57409,
+  "compass": 57413,
+  "layers": 57396,
+  "menu": 58881,
+  "list": 57447,
+  "options-vertical": 58882,
+  "options": 58883,
+  "arrow-down": 58884,
+  "arrow-left": 58885,
+  "arrow-right": 58886,
+  "arrow-up": 58887,
+  "arrow-up-circle": 57464,
+  "arrow-left-circle": 57466,
+  "arrow-right-circle": 57465,
+  "arrow-down-circle": 57467,
+  "check": 57472,
+  "clock": 57473,
+  "plus": 57493,
+  "minus": 58901,
+  "close": 57474,
+  "event": 58905,
+  "exclamation": 58903,
+  "organization": 58902,
+  "trophy": 57350,
+  "screen-smartphone": 57360,
+  "screen-desktop": 57361,
+  "plane": 57362,
+  "notebook": 57363,
+  "mustache": 57364,
+  "mouse": 57365,
+  "magnet": 57366,
+  "energy": 57376,
+  "disc": 57378,
+  "cursor": 57454,
+  "cursor-move": 57379,
+  "crop": 57380,
+  "chemistry": 57382,
+  "speedometer": 57351,
+  "shield": 57358,
+  "screen-tablet": 57359,
+  "magic-wand": 57367,
+  "hourglass": 57368,
+  "graduation": 57369,
+  "ghost": 57370,
+  "game-controller": 57371,
+  "fire": 57372,
+  "eyeglass": 57373,
+  "envelope-open": 57374,
+  "envelope-letter": 57375,
+  "bell": 57383,
+  "badge": 57384,
+  "anchor": 57385,
+  "wallet": 57386,
+  "vector": 57387,
+  "speech": 57388,
+  "puzzle": 57389,
+  "printer": 57390,
+  "present": 57391,
+  "playlist": 57392,
+  "pin": 57393,
+  "picture": 57394,
+  "handbag": 57397,
+  "globe-alt": 57398,
+  "globe": 57399,
+  "folder-alt": 57401,
+  "folder": 57481,
+  "film": 57402,
+  "feed": 57403,
+  "drop": 57406,
+  "drawer": 57407,
+  "docs": 57408,
+  "doc": 57477,
+  "diamond": 57411,
+  "cup": 57412,
+  "calculator": 57417,
+  "bubbles": 57418,
+  "briefcase": 57419,
+  "book-open": 57420,
+  "basket-loaded": 57421,
+  "basket": 57422,
+  "bag": 57423,
+  "action-undo": 57424,
+  "action-redo": 57425,
+  "wrench": 57426,
+  "umbrella": 57427,
+  "trash": 57428,
+  "tag": 57429,
+  "support": 57430,
+  "frame": 57400,
+  "size-fullscreen": 57431,
+  "size-actual": 57432,
+  "shuffle": 57433,
+  "share-alt": 57434,
+  "share": 57435,
+  "rocket": 57436,
+  "question": 57437,
+  "pie-chart": 57438,
+  "pencil": 57439,
+  "note": 57440,
+  "loop": 57444,
+  "home": 57449,
+  "grid": 57450,
+  "graph": 57451,
+  "microphone": 57443,
+  "music-tone-alt": 57441,
+  "music-tone": 57442,
+  "earphones-alt": 57404,
+  "earphones": 57405,
+  "equalizer": 57452,
+  "like": 57448,
+  "dislike": 57453,
+  "control-start": 57455,
+  "control-rewind": 57456,
+  "control-play": 57457,
+  "control-pause": 57458,
+  "control-forward": 57459,
+  "control-end": 57460,
+  "volume-1": 57503,
+  "volume-2": 57504,
+  "volume-off": 57505,
+  "calendar": 57461,
+  "bulb": 57462,
+  "chart": 57463,
+  "ban": 57468,
+  "bubble": 57469,
+  "camrecorder": 57470,
+  "camera": 57471,
+  "cloud-download": 57475,
+  "cloud-upload": 57476,
+  "envelope": 57478,
+  "eye": 57479,
+  "flag": 57480,
+  "heart": 57482,
+  "info": 57483,
+  "key": 57484,
+  "link": 57485,
+  "lock": 57486,
+  "lock-open": 57487,
+  "magnifier": 57488,
+  "magnifier-add": 57489,
+  "magnifier-remove": 57490,
+  "paper-clip": 57491,
+  "paper-plane": 57492,
+  "power": 57495,
+  "refresh": 57496,
+  "reload": 57497,
+  "settings": 57498,
+  "star": 57499,
+  "symbol-female": 57500,
+  "symbol-male": 57501,
+  "target": 57502,
+  "credit-card": 57381,
+  "paypal": 58888,
+  "social-tumblr": 57354,
+  "social-twitter": 57353,
+  "social-facebook": 57355,
+  "social-instagram": 58889,
+  "social-linkedin": 58890,
+  "social-pinterest": 58891,
+  "social-github": 58892,
+  "social-google": 58893,
+  "social-reddit": 58894,
+  "social-skype": 58895,
+  "social-dribbble": 57357,
+  "social-behance": 58896,
+  "social-foursqare": 58897,
+  "social-soundcloud": 58898,
+  "social-spotify": 58899,
+  "social-stumbleupon": 58900,
+  "social-youtube": 57352,
+  "social-dropbox": 57356,
+  "social-vkontakte": 58904,
+  "social-steam": 58912
+}

+ 102 - 0
android/app/src/main/res/raw/node_modules_expo_vectoricons_build_vendor_reactnativevectoricons_glyphmaps_zocial.json

@@ -0,0 +1,102 @@
+{
+  "acrobat": 61696,
+  "amazon": 61697,
+  "android": 61698,
+  "angellist": 61699,
+  "aol": 61700,
+  "appnet": 61701,
+  "appstore": 61702,
+  "bitbucket": 61703,
+  "bitcoin": 61704,
+  "blogger": 61705,
+  "buffer": 61706,
+  "cal": 61707,
+  "call": 61708,
+  "cart": 61709,
+  "chrome": 61710,
+  "cloudapp": 61711,
+  "creativecommons": 61712,
+  "delicious": 61713,
+  "digg": 61714,
+  "disqus": 61715,
+  "dribbble": 61716,
+  "dropbox": 61717,
+  "drupal": 61718,
+  "dwolla": 61720,
+  "email": 61721,
+  "eventasaurus": 61722,
+  "eventbrite": 61723,
+  "eventful": 61724,
+  "evernote": 61725,
+  "facebook": 61726,
+  "fivehundredpx": 61727,
+  "flattr": 61728,
+  "flickr": 61729,
+  "forrst": 61730,
+  "foursquare": 61731,
+  "github": 61732,
+  "gmail": 61733,
+  "google": 61734,
+  "googleplay": 61735,
+  "googleplus": 61736,
+  "gowalla": 61737,
+  "grooveshark": 61738,
+  "guest": 61739,
+  "html5": 61740,
+  "ie": 61741,
+  "instagram": 61742,
+  "instapaper": 61743,
+  "intensedebate": 61744,
+  "itunes": 61745,
+  "klout": 61746,
+  "lanyrd": 61747,
+  "lastfm": 61748,
+  "lego": 61749,
+  "linkedin": 61750,
+  "lkdto": 61751,
+  "logmein": 61752,
+  "macstore": 61753,
+  "meetup": 61754,
+  "myspace": 61755,
+  "ninetyninedesigns": 61756,
+  "openid": 61757,
+  "opentable": 61758,
+  "paypal": 61759,
+  "persona": 61796,
+  "pinboard": 61760,
+  "pinterest": 61761,
+  "plancast": 61762,
+  "plurk": 61763,
+  "pocket": 61764,
+  "podcast": 61765,
+  "posterous": 61766,
+  "print": 61767,
+  "quora": 61768,
+  "reddit": 61769,
+  "rss": 61770,
+  "scribd": 61771,
+  "skype": 61772,
+  "smashing": 61773,
+  "songkick": 61774,
+  "soundcloud": 61775,
+  "spotify": 61776,
+  "stackoverflow": 61777,
+  "statusnet": 61778,
+  "steam": 61779,
+  "stripe": 61780,
+  "stumbleupon": 61781,
+  "tumblr": 61782,
+  "twitter": 61783,
+  "viadeo": 61784,
+  "vimeo": 61785,
+  "vk": 61786,
+  "weibo": 61787,
+  "wikipedia": 61788,
+  "windows": 61789,
+  "wordpress": 61790,
+  "xing": 61791,
+  "yahoo": 61792,
+  "ycombinator": 61793,
+  "yelp": 61794,
+  "youtube": 61795
+}

+ 12 - 0
android/app/src/main/res/raw/node_modules_expogooglefonts_racingsansone_metadata.json

@@ -0,0 +1,12 @@
+{
+  "family": "Racing Sans One",
+  "variants": ["regular"],
+  "subsets": ["latin", "latin-ext"],
+  "version": "v8",
+  "lastModified": "2020-09-02",
+  "files": {
+    "regular": "http://fonts.gstatic.com/s/racingsansone/v8/sykr-yRtm7EvTrXNxkv5jfKKyDCwL3rmWpIBtA.ttf"
+  },
+  "category": "display",
+  "kind": "webfonts#webfont"
+}

BIN
android/app/src/main/res/raw/node_modules_expogooglefonts_racingsansone_racingsansone_400regular.ttf


+ 560 - 0
android/app/src/main/res/raw/node_modules_mdndata_css_atrules.json

@@ -0,0 +1,560 @@
+{
+  "@charset": {
+    "syntax": "@charset \"<charset>\";",
+    "groups": [
+      "CSS Charsets"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@charset"
+  },
+  "@counter-style": {
+    "syntax": "@counter-style <counter-style-name> {\n  [ system: <counter-system>; ] ||\n  [ symbols: <counter-symbols>; ] ||\n  [ additive-symbols: <additive-symbols>; ] ||\n  [ negative: <negative-symbol>; ] ||\n  [ prefix: <prefix>; ] ||\n  [ suffix: <suffix>; ] ||\n  [ range: <range>; ] ||\n  [ pad: <padding>; ] ||\n  [ speak-as: <speak-as>; ] ||\n  [ fallback: <counter-style-name>; ]\n}",
+    "interfaces": [
+      "CSSCounterStyleRule"
+    ],
+    "groups": [
+      "CSS Counter Styles"
+    ],
+    "descriptors": {
+      "additive-symbols": {
+        "syntax": "[ <integer> && <symbol> ]#",
+        "media": "all",
+        "initial": "n/a (required)",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "fallback": {
+        "syntax": "<counter-style-name>",
+        "media": "all",
+        "initial": "decimal",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "negative": {
+        "syntax": "<symbol> <symbol>?",
+        "media": "all",
+        "initial": "\"-\" hyphen-minus",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "pad": {
+        "syntax": "<integer> && <symbol>",
+        "media": "all",
+        "initial": "0 \"\"",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "prefix": {
+        "syntax": "<symbol>",
+        "media": "all",
+        "initial": "\"\"",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "range": {
+        "syntax": "[ [ <integer> | infinite ]{2} ]# | auto",
+        "media": "all",
+        "initial": "auto",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "speak-as": {
+        "syntax": "auto | bullets | numbers | words | spell-out | <counter-style-name>",
+        "media": "all",
+        "initial": "auto",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "suffix": {
+        "syntax": "<symbol>",
+        "media": "all",
+        "initial": "\". \"",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "symbols": {
+        "syntax": "<symbol>+",
+        "media": "all",
+        "initial": "n/a (required)",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "system": {
+        "syntax": "cyclic | numeric | alphabetic | symbolic | additive | [ fixed <integer>? ] | [ extends <counter-style-name> ]",
+        "media": "all",
+        "initial": "symbolic",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      }
+    },
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@counter-style"
+  },
+  "@document": {
+    "syntax": "@document [ <url> | url-prefix(<string>) | domain(<string>) | media-document(<string>) | regexp(<string>) ]# {\n  <group-rule-body>\n}",
+    "interfaces": [
+      "CSSGroupingRule",
+      "CSSConditionRule"
+    ],
+    "groups": [
+      "CSS Conditional Rules"
+    ],
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@document"
+  },
+  "@font-face": {
+    "syntax": "@font-face {\n  [ font-family: <family-name>; ] ||\n  [ src: <src>; ] ||\n  [ unicode-range: <unicode-range>; ] ||\n  [ font-variant: <font-variant>; ] ||\n  [ font-feature-settings: <font-feature-settings>; ] ||\n  [ font-variation-settings: <font-variation-settings>; ] ||\n  [ font-stretch: <font-stretch>; ] ||\n  [ font-weight: <font-weight>; ] ||\n  [ font-style: <font-style>; ]\n}",
+    "interfaces": [
+      "CSSFontFaceRule"
+    ],
+    "groups": [
+      "CSS Fonts"
+    ],
+    "descriptors": {
+      "font-display": {
+        "syntax": "[ auto | block | swap | fallback | optional ]",
+        "media": "visual",
+        "percentages": "no",
+        "initial": "auto",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "experimental"
+      },
+      "font-family": {
+        "syntax": "<family-name>",
+        "media": "all",
+        "initial": "n/a (required)",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "font-feature-settings": {
+        "syntax": "normal | <feature-tag-value>#",
+        "media": "all",
+        "initial": "normal",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "font-variation-settings": {
+        "syntax": "normal | [ <string> <number> ]#",
+        "media": "all",
+        "initial": "normal",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "font-stretch": {
+        "syntax": "<font-stretch-absolute>{1,2}",
+        "media": "all",
+        "initial": "normal",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "font-style": {
+        "syntax": "normal | italic | oblique <angle>{0,2}",
+        "media": "all",
+        "initial": "normal",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "font-weight": {
+        "syntax": "<font-weight-absolute>{1,2}",
+        "media": "all",
+        "initial": "normal",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "font-variant": {
+        "syntax": "normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> || stylistic(<feature-value-name>) || historical-forms || styleset(<feature-value-name>#) || character-variant(<feature-value-name>#) || swash(<feature-value-name>) || ornaments(<feature-value-name>) || annotation(<feature-value-name>) || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero || <east-asian-variant-values> || <east-asian-width-values> || ruby ]",
+        "media": "all",
+        "initial": "normal",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "src": {
+        "syntax": "[ <url> [ format( <string># ) ]? | local( <family-name> ) ]#",
+        "media": "all",
+        "initial": "n/a (required)",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "unicode-range": {
+        "syntax": "<unicode-range>#",
+        "media": "all",
+        "initial": "U+0-10FFFF",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      }
+    },
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@font-face"
+  },
+  "@font-feature-values": {
+    "syntax": "@font-feature-values <family-name># {\n  <feature-value-block-list>\n}",
+    "interfaces": [
+      "CSSFontFeatureValuesRule"
+    ],
+    "groups": [
+      "CSS Fonts"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@font-feature-values"
+  },
+  "@import": {
+    "syntax": "@import [ <string> | <url> ] [ <media-query-list> ]?;",
+    "groups": [
+      "Media Queries"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@import"
+  },
+  "@keyframes": {
+    "syntax": "@keyframes <keyframes-name> {\n  <keyframe-block-list>\n}",
+    "interfaces": [
+      "CSSKeyframeRule",
+      "CSSKeyframesRule"
+    ],
+    "groups": [
+      "CSS Animations"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@keyframes"
+  },
+  "@media": {
+    "syntax": "@media <media-query-list> {\n  <group-rule-body>\n}",
+    "interfaces": [
+      "CSSGroupingRule",
+      "CSSConditionRule",
+      "CSSMediaRule",
+      "CSSCustomMediaRule"
+    ],
+    "groups": [
+      "CSS Conditional Rules",
+      "Media Queries"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@media"
+  },
+  "@namespace": {
+    "syntax": "@namespace <namespace-prefix>? [ <string> | <url> ];",
+    "groups": [
+      "CSS Namespaces"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@namespace"
+  },
+  "@page": {
+    "syntax": "@page <page-selector-list> {\n  <page-body>\n}",
+    "interfaces": [
+      "CSSPageRule"
+    ],
+    "groups": [
+      "CSS Pages"
+    ],
+    "descriptors": {
+      "bleed": {
+        "syntax": "auto | <length>",
+        "media": [
+          "visual",
+          "paged"
+        ],
+        "initial": "auto",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "marks": {
+        "syntax": "none | [ crop || cross ]",
+        "media": [
+          "visual",
+          "paged"
+        ],
+        "initial": "none",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "size": {
+        "syntax": "<length>{1,2} | auto | [ <page-size> || [ portrait | landscape ] ]",
+        "media": [
+          "visual",
+          "paged"
+        ],
+        "initial": "auto",
+        "percentages": "no",
+        "computed": "asSpecifiedRelativeToAbsoluteLengths",
+        "order": "orderOfAppearance",
+        "status": "standard"
+      }
+    },
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@page"
+  },
+  "@property": {
+    "syntax": "@property <custom-property-name> {\n  <declaration-list>\n}",
+    "interfaces": [
+      "CSS",
+      "CSSPropertyRule"
+    ],
+    "groups": [
+      "CSS Houdini"
+    ],
+    "descriptors": {
+      "syntax": {
+        "syntax": "<string>",
+        "media": "all",
+        "percentages": "no",
+        "initial": "n/a (required)",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "experimental"
+      },
+      "inherits": {
+        "syntax": "true | false",
+        "media": "all",
+        "percentages": "no",
+        "initial": "auto",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "experimental"
+      },
+      "initial-value": {
+        "syntax": "<string>",
+        "media": "all",
+        "initial": "n/a (required)",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "experimental"
+      }
+    },
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@property"
+  },
+  "@supports": {
+    "syntax": "@supports <supports-condition> {\n  <group-rule-body>\n}",
+    "interfaces": [
+      "CSSGroupingRule",
+      "CSSConditionRule",
+      "CSSSupportsRule"
+    ],
+    "groups": [
+      "CSS Conditional Rules"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@supports"
+  },
+  "@viewport": {
+    "syntax": "@viewport {\n  <group-rule-body>\n}",
+    "interfaces": [
+      "CSSViewportRule"
+    ],
+    "groups": [
+      "CSS Device Adaptation"
+    ],
+    "descriptors": {
+      "height": {
+        "syntax": "<viewport-length>{1,2}",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": [
+          "min-height",
+          "max-height"
+        ],
+        "percentages": [
+          "min-height",
+          "max-height"
+        ],
+        "computed": [
+          "min-height",
+          "max-height"
+        ],
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "max-height": {
+        "syntax": "<viewport-length>",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "referToHeightOfInitialViewport",
+        "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "max-width": {
+        "syntax": "<viewport-length>",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "referToWidthOfInitialViewport",
+        "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "max-zoom": {
+        "syntax": "auto | <number> | <percentage>",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "the zoom factor itself",
+        "computed": "autoNonNegativeOrPercentage",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "min-height": {
+        "syntax": "<viewport-length>",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "referToHeightOfInitialViewport",
+        "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "min-width": {
+        "syntax": "<viewport-length>",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "referToWidthOfInitialViewport",
+        "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "min-zoom": {
+        "syntax": "auto | <number> | <percentage>",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "the zoom factor itself",
+        "computed": "autoNonNegativeOrPercentage",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "orientation": {
+        "syntax": "auto | portrait | landscape",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "referToSizeOfBoundingBox",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "user-zoom": {
+        "syntax": "zoom | fixed",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "zoom",
+        "percentages": "referToSizeOfBoundingBox",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "viewport-fit": {
+        "syntax": "auto | contain | cover",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "no",
+        "computed": "asSpecified",
+        "order": "uniqueOrder",
+        "status": "standard"
+      },
+      "width": {
+        "syntax": "<viewport-length>{1,2}",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": [
+          "min-width",
+          "max-width"
+        ],
+        "percentages": [
+          "min-width",
+          "max-width"
+        ],
+        "computed": [
+          "min-width",
+          "max-width"
+        ],
+        "order": "orderOfAppearance",
+        "status": "standard"
+      },
+      "zoom": {
+        "syntax": "auto | <number> | <percentage>",
+        "media": [
+          "visual",
+          "continuous"
+        ],
+        "initial": "auto",
+        "percentages": "the zoom factor itself",
+        "computed": "autoNonNegativeOrPercentage",
+        "order": "uniqueOrder",
+        "status": "standard"
+      }
+    },
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/@viewport"
+  }
+}

+ 9163 - 0
android/app/src/main/res/raw/node_modules_mdndata_css_properties.json

@@ -0,0 +1,9163 @@
+{
+  "--*": {
+    "syntax": "<declaration-value>",
+    "media": "all",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Variables"
+    ],
+    "initial": "seeProse",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedWithVarsSubstituted",
+    "order": "perGrammar",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/--*"
+  },
+  "-ms-accelerator": {
+    "syntax": "false | true",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "false",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-accelerator"
+  },
+  "-ms-block-progression": {
+    "syntax": "tb | rl | bt | lr",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "tb",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-block-progression"
+  },
+  "-ms-content-zoom-chaining": {
+    "syntax": "none | chained",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-content-zoom-chaining"
+  },
+  "-ms-content-zooming": {
+    "syntax": "none | zoom",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "zoomForTheTopLevelNoneForTheRest",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-content-zooming"
+  },
+  "-ms-content-zoom-limit": {
+    "syntax": "<'-ms-content-zoom-limit-min'> <'-ms-content-zoom-limit-max'>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": [
+      "-ms-content-zoom-limit-max",
+      "-ms-content-zoom-limit-min"
+    ],
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": [
+      "-ms-content-zoom-limit-max",
+      "-ms-content-zoom-limit-min"
+    ],
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": [
+      "-ms-content-zoom-limit-max",
+      "-ms-content-zoom-limit-min"
+    ],
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-content-zoom-limit"
+  },
+  "-ms-content-zoom-limit-max": {
+    "syntax": "<percentage>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "maxZoomFactor",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "400%",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-content-zoom-limit-max"
+  },
+  "-ms-content-zoom-limit-min": {
+    "syntax": "<percentage>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "minZoomFactor",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "100%",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-content-zoom-limit-min"
+  },
+  "-ms-content-zoom-snap": {
+    "syntax": "<'-ms-content-zoom-snap-type'> || <'-ms-content-zoom-snap-points'>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": [
+      "-ms-content-zoom-snap-type",
+      "-ms-content-zoom-snap-points"
+    ],
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": [
+      "-ms-content-zoom-snap-type",
+      "-ms-content-zoom-snap-points"
+    ],
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-content-zoom-snap"
+  },
+  "-ms-content-zoom-snap-points": {
+    "syntax": "snapInterval( <percentage>, <percentage> ) | snapList( <percentage># )",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "snapInterval(0%, 100%)",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-content-zoom-snap-points"
+  },
+  "-ms-content-zoom-snap-type": {
+    "syntax": "none | proximity | mandatory",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-content-zoom-snap-type"
+  },
+  "-ms-filter": {
+    "syntax": "<string>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "\"\"",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-filter"
+  },
+  "-ms-flow-from": {
+    "syntax": "[ none | <custom-ident> ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "nonReplacedElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-flow-from"
+  },
+  "-ms-flow-into": {
+    "syntax": "[ none | <custom-ident> ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "iframeElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-flow-into"
+  },
+  "-ms-grid-columns": {
+    "syntax": "none | <track-list> | <auto-track-list>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "simpleListOfLpcDifferenceLpc",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "none",
+    "appliesto": "gridContainers",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-grid-columns"
+  },
+  "-ms-grid-rows": {
+    "syntax": "none | <track-list> | <auto-track-list>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "simpleListOfLpcDifferenceLpc",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "none",
+    "appliesto": "gridContainers",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-grid-rows"
+  },
+  "-ms-high-contrast-adjust": {
+    "syntax": "auto | none",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-high-contrast-adjust"
+  },
+  "-ms-hyphenate-limit-chars": {
+    "syntax": "auto | <integer>{1,3}",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-hyphenate-limit-chars"
+  },
+  "-ms-hyphenate-limit-lines": {
+    "syntax": "no-limit | <integer>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "no-limit",
+    "appliesto": "blockContainerElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-hyphenate-limit-lines"
+  },
+  "-ms-hyphenate-limit-zone": {
+    "syntax": "<percentage> | <length>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "referToLineBoxWidth",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "blockContainerElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-hyphenate-limit-zone"
+  },
+  "-ms-ime-align": {
+    "syntax": "auto | after",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-ime-align"
+  },
+  "-ms-overflow-style": {
+    "syntax": "auto | none | scrollbar | -ms-autohiding-scrollbar",
+    "media": "interactive",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-overflow-style"
+  },
+  "-ms-scrollbar-3dlight-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "dependsOnUserAgent",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scrollbar-3dlight-color"
+  },
+  "-ms-scrollbar-arrow-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "ButtonText",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scrollbar-arrow-color"
+  },
+  "-ms-scrollbar-base-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "dependsOnUserAgent",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scrollbar-base-color"
+  },
+  "-ms-scrollbar-darkshadow-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "ThreeDDarkShadow",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scrollbar-darkshadow-color"
+  },
+  "-ms-scrollbar-face-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "ThreeDFace",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scrollbar-face-color"
+  },
+  "-ms-scrollbar-highlight-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "ThreeDHighlight",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scrollbar-highlight-color"
+  },
+  "-ms-scrollbar-shadow-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "ThreeDDarkShadow",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scrollbar-shadow-color"
+  },
+  "-ms-scrollbar-track-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "Scrollbar",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scrollbar-track-color"
+  },
+  "-ms-scroll-chaining": {
+    "syntax": "chained | none",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "chained",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-chaining"
+  },
+  "-ms-scroll-limit": {
+    "syntax": "<'-ms-scroll-limit-x-min'> <'-ms-scroll-limit-y-min'> <'-ms-scroll-limit-x-max'> <'-ms-scroll-limit-y-max'>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": [
+      "-ms-scroll-limit-x-min",
+      "-ms-scroll-limit-y-min",
+      "-ms-scroll-limit-x-max",
+      "-ms-scroll-limit-y-max"
+    ],
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": [
+      "-ms-scroll-limit-x-min",
+      "-ms-scroll-limit-y-min",
+      "-ms-scroll-limit-x-max",
+      "-ms-scroll-limit-y-max"
+    ],
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-limit"
+  },
+  "-ms-scroll-limit-x-max": {
+    "syntax": "auto | <length>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-limit-x-max"
+  },
+  "-ms-scroll-limit-x-min": {
+    "syntax": "<length>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-limit-x-min"
+  },
+  "-ms-scroll-limit-y-max": {
+    "syntax": "auto | <length>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-limit-y-max"
+  },
+  "-ms-scroll-limit-y-min": {
+    "syntax": "<length>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-limit-y-min"
+  },
+  "-ms-scroll-rails": {
+    "syntax": "none | railed",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "railed",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-rails"
+  },
+  "-ms-scroll-snap-points-x": {
+    "syntax": "snapInterval( <length-percentage>, <length-percentage> ) | snapList( <length-percentage># )",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "snapInterval(0px, 100%)",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-snap-points-x"
+  },
+  "-ms-scroll-snap-points-y": {
+    "syntax": "snapInterval( <length-percentage>, <length-percentage> ) | snapList( <length-percentage># )",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "snapInterval(0px, 100%)",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-snap-points-y"
+  },
+  "-ms-scroll-snap-type": {
+    "syntax": "none | proximity | mandatory",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-snap-type"
+  },
+  "-ms-scroll-snap-x": {
+    "syntax": "<'-ms-scroll-snap-type'> <'-ms-scroll-snap-points-x'>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": [
+      "-ms-scroll-snap-type",
+      "-ms-scroll-snap-points-x"
+    ],
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": [
+      "-ms-scroll-snap-type",
+      "-ms-scroll-snap-points-x"
+    ],
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-snap-x"
+  },
+  "-ms-scroll-snap-y": {
+    "syntax": "<'-ms-scroll-snap-type'> <'-ms-scroll-snap-points-y'>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": [
+      "-ms-scroll-snap-type",
+      "-ms-scroll-snap-points-y"
+    ],
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": [
+      "-ms-scroll-snap-type",
+      "-ms-scroll-snap-points-y"
+    ],
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-snap-y"
+  },
+  "-ms-scroll-translation": {
+    "syntax": "none | vertical-to-horizontal",
+    "media": "interactive",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-scroll-translation"
+  },
+  "-ms-text-autospace": {
+    "syntax": "none | ideograph-alpha | ideograph-numeric | ideograph-parenthesis | ideograph-space",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-text-autospace"
+  },
+  "-ms-touch-select": {
+    "syntax": "grippers | none",
+    "media": "interactive",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "grippers",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-touch-select"
+  },
+  "-ms-user-select": {
+    "syntax": "none | element | text",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "text",
+    "appliesto": "nonReplacedElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-user-select"
+  },
+  "-ms-wrap-flow": {
+    "syntax": "auto | both | start | end | maximum | clear",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "blockLevelElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-wrap-flow"
+  },
+  "-ms-wrap-margin": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "exclusionElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-wrap-margin"
+  },
+  "-ms-wrap-through": {
+    "syntax": "wrap | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "wrap",
+    "appliesto": "blockLevelElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-ms-wrap-through"
+  },
+  "-moz-appearance": {
+    "syntax": "none | button | button-arrow-down | button-arrow-next | button-arrow-previous | button-arrow-up | button-bevel | button-focus | caret | checkbox | checkbox-container | checkbox-label | checkmenuitem | dualbutton | groupbox | listbox | listitem | menuarrow | menubar | menucheckbox | menuimage | menuitem | menuitemtext | menulist | menulist-button | menulist-text | menulist-textfield | menupopup | menuradio | menuseparator | meterbar | meterchunk | progressbar | progressbar-vertical | progresschunk | progresschunk-vertical | radio | radio-container | radio-label | radiomenuitem | range | range-thumb | resizer | resizerpanel | scale-horizontal | scalethumbend | scalethumb-horizontal | scalethumbstart | scalethumbtick | scalethumb-vertical | scale-vertical | scrollbarbutton-down | scrollbarbutton-left | scrollbarbutton-right | scrollbarbutton-up | scrollbarthumb-horizontal | scrollbarthumb-vertical | scrollbartrack-horizontal | scrollbartrack-vertical | searchfield | separator | sheet | spinner | spinner-downbutton | spinner-textfield | spinner-upbutton | splitter | statusbar | statusbarpanel | tab | tabpanel | tabpanels | tab-scroll-arrow-back | tab-scroll-arrow-forward | textfield | textfield-multiline | toolbar | toolbarbutton | toolbarbutton-dropdown | toolbargripper | toolbox | tooltip | treeheader | treeheadercell | treeheadersortarrow | treeitem | treeline | treetwisty | treetwistyopen | treeview | -moz-mac-unified-toolbar | -moz-win-borderless-glass | -moz-win-browsertabbar-toolbox | -moz-win-communicationstext | -moz-win-communications-toolbox | -moz-win-exclude-glass | -moz-win-glass | -moz-win-mediatext | -moz-win-media-toolbox | -moz-window-button-box | -moz-window-button-box-maximized | -moz-window-button-close | -moz-window-button-maximize | -moz-window-button-minimize | -moz-window-button-restore | -moz-window-frame-bottom | -moz-window-frame-left | -moz-window-frame-right | -moz-window-titlebar | -moz-window-titlebar-maximized",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "noneButOverriddenInUserAgentCSS",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/appearance"
+  },
+  "-moz-binding": {
+    "syntax": "<url> | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsExceptGeneratedContentOrPseudoElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-binding"
+  },
+  "-moz-border-bottom-colors": {
+    "syntax": "<color>+ | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-border-bottom-colors"
+  },
+  "-moz-border-left-colors": {
+    "syntax": "<color>+ | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-border-left-colors"
+  },
+  "-moz-border-right-colors": {
+    "syntax": "<color>+ | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-border-right-colors"
+  },
+  "-moz-border-top-colors": {
+    "syntax": "<color>+ | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-border-top-colors"
+  },
+  "-moz-context-properties": {
+    "syntax": "none | [ fill | fill-opacity | stroke | stroke-opacity ]#",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsThatCanReferenceImages",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-context-properties"
+  },
+  "-moz-float-edge": {
+    "syntax": "border-box | content-box | margin-box | padding-box",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "content-box",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-float-edge"
+  },
+  "-moz-force-broken-image-icon": {
+    "syntax": "<integer [0,1]>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "images",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-force-broken-image-icon"
+  },
+  "-moz-image-region": {
+    "syntax": "<shape> | auto",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "xulImageElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-image-region"
+  },
+  "-moz-orient": {
+    "syntax": "inline | block | horizontal | vertical",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "inline",
+    "appliesto": "anyElementEffectOnProgressAndMeter",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-orient"
+  },
+  "-moz-outline-radius": {
+    "syntax": "<outline-radius>{1,4} [ / <outline-radius>{1,4} ]?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "-moz-outline-radius-topleft",
+      "-moz-outline-radius-topright",
+      "-moz-outline-radius-bottomright",
+      "-moz-outline-radius-bottomleft"
+    ],
+    "percentages": [
+      "-moz-outline-radius-topleft",
+      "-moz-outline-radius-topright",
+      "-moz-outline-radius-bottomright",
+      "-moz-outline-radius-bottomleft"
+    ],
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": [
+      "-moz-outline-radius-topleft",
+      "-moz-outline-radius-topright",
+      "-moz-outline-radius-bottomright",
+      "-moz-outline-radius-bottomleft"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "-moz-outline-radius-topleft",
+      "-moz-outline-radius-topright",
+      "-moz-outline-radius-bottomright",
+      "-moz-outline-radius-bottomleft"
+    ],
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-outline-radius"
+  },
+  "-moz-outline-radius-bottomleft": {
+    "syntax": "<outline-radius>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-outline-radius-bottomleft"
+  },
+  "-moz-outline-radius-bottomright": {
+    "syntax": "<outline-radius>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-outline-radius-bottomright"
+  },
+  "-moz-outline-radius-topleft": {
+    "syntax": "<outline-radius>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-outline-radius-topleft"
+  },
+  "-moz-outline-radius-topright": {
+    "syntax": "<outline-radius>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-outline-radius-topright"
+  },
+  "-moz-stack-sizing": {
+    "syntax": "ignore | stretch-to-fit",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "stretch-to-fit",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-stack-sizing"
+  },
+  "-moz-text-blink": {
+    "syntax": "none | blink",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-text-blink"
+  },
+  "-moz-user-focus": {
+    "syntax": "ignore | normal | select-after | select-before | select-menu | select-same | select-all | none",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-user-focus"
+  },
+  "-moz-user-input": {
+    "syntax": "auto | none | enabled | disabled",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-user-input"
+  },
+  "-moz-user-modify": {
+    "syntax": "read-only | read-write | write-only",
+    "media": "interactive",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "read-only",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-user-modify"
+  },
+  "-moz-window-dragging": {
+    "syntax": "drag | no-drag",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "drag",
+    "appliesto": "allElementsCreatingNativeWindows",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-window-dragging"
+  },
+  "-moz-window-shadow": {
+    "syntax": "default | menu | tooltip | sheet | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "default",
+    "appliesto": "allElementsCreatingNativeWindows",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-moz-window-shadow"
+  },
+  "-webkit-appearance": {
+    "syntax": "none | button | button-bevel | caret | checkbox | default-button | inner-spin-button | listbox | listitem | media-controls-background | media-controls-fullscreen-background | media-current-time-display | media-enter-fullscreen-button | media-exit-fullscreen-button | media-fullscreen-button | media-mute-button | media-overlay-play-button | media-play-button | media-seek-back-button | media-seek-forward-button | media-slider | media-sliderthumb | media-time-remaining-display | media-toggle-closed-captions-button | media-volume-slider | media-volume-slider-container | media-volume-sliderthumb | menulist | menulist-button | menulist-text | menulist-textfield | meter | progress-bar | progress-bar-value | push-button | radio | searchfield | searchfield-cancel-button | searchfield-decoration | searchfield-results-button | searchfield-results-decoration | slider-horizontal | slider-vertical | sliderthumb-horizontal | sliderthumb-vertical | square-button | textarea | textfield | -apple-pay-button",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "noneButOverriddenInUserAgentCSS",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/appearance"
+  },
+  "-webkit-border-before": {
+    "syntax": "<'border-width'> || <'border-style'> || <'color'>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": [
+      "-webkit-border-before-width"
+    ],
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": [
+      "border-width",
+      "border-style",
+      "color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-width",
+      "border-style",
+      "color"
+    ],
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-border-before"
+  },
+  "-webkit-border-before-color": {
+    "syntax": "<'color'>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "nonstandard"
+  },
+  "-webkit-border-before-style": {
+    "syntax": "<'border-style'>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard"
+  },
+  "-webkit-border-before-width": {
+    "syntax": "<'border-width'>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthZeroIfBorderStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "status": "nonstandard"
+  },
+  "-webkit-box-reflect": {
+    "syntax": "[ above | below | right | left ]? <length>? <image>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-box-reflect"
+  },
+  "-webkit-line-clamp": {
+    "syntax": "none | <integer>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions",
+      "CSS Overflow"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-line-clamp"
+  },
+  "-webkit-mask": {
+    "syntax": "[ <mask-reference> || <position> [ / <bg-size> ]? || <repeat-style> || [ <box> | border | padding | content | text ] || [ <box> | border | padding | content ] ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": [
+      "-webkit-mask-image",
+      "-webkit-mask-repeat",
+      "-webkit-mask-attachment",
+      "-webkit-mask-position",
+      "-webkit-mask-origin",
+      "-webkit-mask-clip"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "-webkit-mask-image",
+      "-webkit-mask-repeat",
+      "-webkit-mask-attachment",
+      "-webkit-mask-position",
+      "-webkit-mask-origin",
+      "-webkit-mask-clip"
+    ],
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask"
+  },
+  "-webkit-mask-attachment": {
+    "syntax": "<attachment>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "scroll",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-attachment"
+  },
+  "-webkit-mask-clip": {
+    "syntax": "[ <box> | border | padding | content | text ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "border",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-clip"
+  },
+  "-webkit-mask-composite": {
+    "syntax": "<composite-style>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "source-over",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-composite"
+  },
+  "-webkit-mask-image": {
+    "syntax": "<mask-reference>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "absoluteURIOrNone",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-image"
+  },
+  "-webkit-mask-origin": {
+    "syntax": "[ <box> | border | padding | content ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "padding",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-origin"
+  },
+  "-webkit-mask-position": {
+    "syntax": "<position>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "referToSizeOfElement",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "0% 0%",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOrPercentage",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-position"
+  },
+  "-webkit-mask-position-x": {
+    "syntax": "[ <length-percentage> | left | center | right ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "referToSizeOfElement",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "0%",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOrPercentage",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-position-x"
+  },
+  "-webkit-mask-position-y": {
+    "syntax": "[ <length-percentage> | top | center | bottom ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "referToSizeOfElement",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "0%",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOrPercentage",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-position-y"
+  },
+  "-webkit-mask-repeat": {
+    "syntax": "<repeat-style>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "repeat",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-repeat"
+  },
+  "-webkit-mask-repeat-x": {
+    "syntax": "repeat | no-repeat | space | round",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "repeat",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-repeat-x"
+  },
+  "-webkit-mask-repeat-y": {
+    "syntax": "repeat | no-repeat | space | round",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "repeat",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOrPercentage",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-repeat-y"
+  },
+  "-webkit-mask-size": {
+    "syntax": "<bg-size>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "relativeToBackgroundPositioningArea",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "auto auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-size"
+  },
+  "-webkit-overflow-scrolling": {
+    "syntax": "auto | touch",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollingBoxes",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-overflow-scrolling"
+  },
+  "-webkit-tap-highlight-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "black",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-tap-highlight-color"
+  },
+  "-webkit-text-fill-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-text-fill-color"
+  },
+  "-webkit-text-stroke": {
+    "syntax": "<length> || <color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": [
+      "-webkit-text-stroke-width",
+      "-webkit-text-stroke-color"
+    ],
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": [
+      "-webkit-text-stroke-width",
+      "-webkit-text-stroke-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "-webkit-text-stroke-width",
+      "-webkit-text-stroke-color"
+    ],
+    "order": "canonicalOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke"
+  },
+  "-webkit-text-stroke-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-color"
+  },
+  "-webkit-text-stroke-width": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "absoluteLength",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-width"
+  },
+  "-webkit-touch-callout": {
+    "syntax": "default | none",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "default",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/-webkit-touch-callout"
+  },
+  "-webkit-user-modify": {
+    "syntax": "read-only | read-write | read-write-plaintext-only",
+    "media": "interactive",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "WebKit Extensions"
+    ],
+    "initial": "read-only",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard"
+  },
+  "align-content": {
+    "syntax": "normal | <baseline-position> | <content-distribution> | <overflow-position>? <content-position>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "normal",
+    "appliesto": "multilineFlexContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/align-content"
+  },
+  "align-items": {
+    "syntax": "normal | stretch | <baseline-position> | [ <overflow-position>? <self-position> ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/align-items"
+  },
+  "align-self": {
+    "syntax": "auto | normal | stretch | <baseline-position> | <overflow-position>? <self-position>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "auto",
+    "appliesto": "flexItemsGridItemsAndAbsolutelyPositionedBoxes",
+    "computed": "autoOnAbsolutelyPositionedElementsValueOfAlignItemsOnParent",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/align-self"
+  },
+  "align-tracks": {
+    "syntax": "[ normal | <baseline-position> | <content-distribution> | <overflow-position>? <content-position> ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "normal",
+    "appliesto": "gridContainersWithMasonryLayoutInTheirBlockAxis",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/align-tracks"
+  },
+  "all": {
+    "syntax": "initial | inherit | unset | revert",
+    "media": "noPracticalMedia",
+    "inherited": false,
+    "animationType": "eachOfShorthandPropertiesExceptUnicodeBiDiAndDirection",
+    "percentages": "no",
+    "groups": [
+      "CSS Miscellaneous"
+    ],
+    "initial": "noPracticalInitialValue",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedAppliesToEachProperty",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/all"
+  },
+  "animation": {
+    "syntax": "<single-animation>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": [
+      "animation-name",
+      "animation-duration",
+      "animation-timing-function",
+      "animation-delay",
+      "animation-iteration-count",
+      "animation-direction",
+      "animation-fill-mode",
+      "animation-play-state"
+    ],
+    "appliesto": "allElementsAndPseudos",
+    "computed": [
+      "animation-name",
+      "animation-duration",
+      "animation-timing-function",
+      "animation-delay",
+      "animation-direction",
+      "animation-iteration-count",
+      "animation-fill-mode",
+      "animation-play-state"
+    ],
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation"
+  },
+  "animation-delay": {
+    "syntax": "<time>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": "0s",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation-delay"
+  },
+  "animation-direction": {
+    "syntax": "<single-animation-direction>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": "normal",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation-direction"
+  },
+  "animation-duration": {
+    "syntax": "<time>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": "0s",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation-duration"
+  },
+  "animation-fill-mode": {
+    "syntax": "<single-animation-fill-mode>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation-fill-mode"
+  },
+  "animation-iteration-count": {
+    "syntax": "<single-animation-iteration-count>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": "1",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation-iteration-count"
+  },
+  "animation-name": {
+    "syntax": "[ none | <keyframes-name> ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation-name"
+  },
+  "animation-play-state": {
+    "syntax": "<single-animation-play-state>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": "running",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation-play-state"
+  },
+  "animation-timing-function": {
+    "syntax": "<timing-function>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Animations"
+    ],
+    "initial": "ease",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/animation-timing-function"
+  },
+  "appearance": {
+    "syntax": "none | auto | textfield | menulist-button | <compat-auto>",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/appearance"
+  },
+  "aspect-ratio": {
+    "syntax": "auto | <ratio>",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsExceptInlineBoxesAndInternalRubyOrTableBoxes",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/aspect-ratio"
+  },
+  "azimuth": {
+    "syntax": "<angle> | [ [ left-side | far-left | left | center-left | center | center-right | right | far-right | right-side ] || behind ] | leftwards | rightwards",
+    "media": "aural",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Speech"
+    ],
+    "initial": "center",
+    "appliesto": "allElements",
+    "computed": "normalizedAngle",
+    "order": "orderOfAppearance",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/azimuth"
+  },
+  "backdrop-filter": {
+    "syntax": "none | <filter-function-list>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "filterList",
+    "percentages": "no",
+    "groups": [
+      "Filter Effects"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/backdrop-filter"
+  },
+  "backface-visibility": {
+    "syntax": "visible | hidden",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "visible",
+    "appliesto": "transformableElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/backface-visibility"
+  },
+  "background": {
+    "syntax": "[ <bg-layer> , ]* <final-bg-layer>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "background-color",
+      "background-image",
+      "background-clip",
+      "background-position",
+      "background-size",
+      "background-repeat",
+      "background-attachment"
+    ],
+    "percentages": [
+      "background-position",
+      "background-size"
+    ],
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "background-image",
+      "background-position",
+      "background-size",
+      "background-repeat",
+      "background-origin",
+      "background-clip",
+      "background-attachment",
+      "background-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "background-image",
+      "background-position",
+      "background-size",
+      "background-repeat",
+      "background-origin",
+      "background-clip",
+      "background-attachment",
+      "background-color"
+    ],
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background"
+  },
+  "background-attachment": {
+    "syntax": "<attachment>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "scroll",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-attachment"
+  },
+  "background-blend-mode": {
+    "syntax": "<blend-mode>#",
+    "media": "none",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Compositing and Blending"
+    ],
+    "initial": "normal",
+    "appliesto": "allElementsSVGContainerGraphicsAndGraphicsReferencingElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-blend-mode"
+  },
+  "background-clip": {
+    "syntax": "<box>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "border-box",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-clip"
+  },
+  "background-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "transparent",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-color"
+  },
+  "background-image": {
+    "syntax": "<bg-image>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedURLsAbsolute",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-image"
+  },
+  "background-origin": {
+    "syntax": "<box>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "padding-box",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-origin"
+  },
+  "background-position": {
+    "syntax": "<bg-position>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "repeatableListOfSimpleListOfLpc",
+    "percentages": "referToSizeOfBackgroundPositioningAreaMinusBackgroundImageSize",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "0% 0%",
+    "appliesto": "allElements",
+    "computed": "listEachItemTwoKeywordsOriginOffsets",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-position"
+  },
+  "background-position-x": {
+    "syntax": "[ center | [ [ left | right | x-start | x-end ]? <length-percentage>? ]! ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "referToWidthOfBackgroundPositioningAreaMinusBackgroundImageHeight",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "left",
+    "appliesto": "allElements",
+    "computed": "listEachItemConsistingOfAbsoluteLengthPercentageAndOrigin",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-position-x"
+  },
+  "background-position-y": {
+    "syntax": "[ center | [ [ top | bottom | y-start | y-end ]? <length-percentage>? ]! ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "referToHeightOfBackgroundPositioningAreaMinusBackgroundImageHeight",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "top",
+    "appliesto": "allElements",
+    "computed": "listEachItemConsistingOfAbsoluteLengthPercentageAndOrigin",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-position-y"
+  },
+  "background-repeat": {
+    "syntax": "<repeat-style>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "repeat",
+    "appliesto": "allElements",
+    "computed": "listEachItemHasTwoKeywordsOnePerDimension",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-repeat"
+  },
+  "background-size": {
+    "syntax": "<bg-size>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "repeatableListOfSimpleListOfLpc",
+    "percentages": "relativeToBackgroundPositioningArea",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "auto auto",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/background-size"
+  },
+  "block-overflow": {
+    "syntax": "clip | ellipsis | <string>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "clip",
+    "appliesto": "blockContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "experimental"
+  },
+  "block-size": {
+    "syntax": "<'width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "blockSizeOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "sameAsWidthAndHeight",
+    "computed": "sameAsWidthAndHeight",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/block-size"
+  },
+  "border": {
+    "syntax": "<line-width> || <line-style> || <color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-color",
+      "border-style",
+      "border-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-width",
+      "border-style",
+      "border-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-width",
+      "border-style",
+      "border-color"
+    ],
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border"
+  },
+  "border-block": {
+    "syntax": "<'border-top-width'> || <'border-top-style'> || <'color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": [
+      "border-top-width",
+      "border-top-style",
+      "border-top-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-top-width",
+      "border-top-style",
+      "border-top-color"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block"
+  },
+  "border-block-color": {
+    "syntax": "<'border-top-color'>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-color"
+  },
+  "border-block-style": {
+    "syntax": "<'border-top-style'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-style"
+  },
+  "border-block-width": {
+    "syntax": "<'border-top-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthZeroIfBorderStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-width"
+  },
+  "border-block-end": {
+    "syntax": "<'border-top-width'> || <'border-top-style'> || <'color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-block-end-color",
+      "border-block-end-style",
+      "border-block-end-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": [
+      "border-top-width",
+      "border-top-style",
+      "border-top-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-top-width",
+      "border-top-style",
+      "border-top-color"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-end"
+  },
+  "border-block-end-color": {
+    "syntax": "<'border-top-color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-end-color"
+  },
+  "border-block-end-style": {
+    "syntax": "<'border-top-style'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-end-style"
+  },
+  "border-block-end-width": {
+    "syntax": "<'border-top-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthZeroIfBorderStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-end-width"
+  },
+  "border-block-start": {
+    "syntax": "<'border-top-width'> || <'border-top-style'> || <'color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-block-start-color",
+      "border-block-start-style",
+      "border-block-start-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": [
+      "border-width",
+      "border-style",
+      "color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-width",
+      "border-style",
+      "border-block-start-color"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-start"
+  },
+  "border-block-start-color": {
+    "syntax": "<'border-top-color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-start-color"
+  },
+  "border-block-start-style": {
+    "syntax": "<'border-top-style'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-start-style"
+  },
+  "border-block-start-width": {
+    "syntax": "<'border-top-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthZeroIfBorderStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-block-start-width"
+  },
+  "border-bottom": {
+    "syntax": "<line-width> || <line-style> || <color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-bottom-color",
+      "border-bottom-style",
+      "border-bottom-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-bottom-width",
+      "border-bottom-style",
+      "border-bottom-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-bottom-width",
+      "border-bottom-style",
+      "border-bottom-color"
+    ],
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-bottom"
+  },
+  "border-bottom-color": {
+    "syntax": "<'border-top-color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-bottom-color"
+  },
+  "border-bottom-left-radius": {
+    "syntax": "<length-percentage>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": "twoAbsoluteLengthOrPercentages",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-bottom-left-radius"
+  },
+  "border-bottom-right-radius": {
+    "syntax": "<length-percentage>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": "twoAbsoluteLengthOrPercentages",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-bottom-right-radius"
+  },
+  "border-bottom-style": {
+    "syntax": "<line-style>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-bottom-style"
+  },
+  "border-bottom-width": {
+    "syntax": "<line-width>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOr0IfBorderBottomStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-bottom-width"
+  },
+  "border-collapse": {
+    "syntax": "collapse | separate",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Table"
+    ],
+    "initial": "separate",
+    "appliesto": "tableElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-collapse"
+  },
+  "border-color": {
+    "syntax": "<color>{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-bottom-color",
+      "border-left-color",
+      "border-right-color",
+      "border-top-color"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-top-color",
+      "border-right-color",
+      "border-bottom-color",
+      "border-left-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-bottom-color",
+      "border-left-color",
+      "border-right-color",
+      "border-top-color"
+    ],
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-color"
+  },
+  "border-end-end-radius": {
+    "syntax": "<length-percentage>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": "twoAbsoluteLengthOrPercentages",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-end-end-radius"
+  },
+  "border-end-start-radius": {
+    "syntax": "<length-percentage>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": "twoAbsoluteLengthOrPercentages",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-end-start-radius"
+  },
+  "border-image": {
+    "syntax": "<'border-image-source'> || <'border-image-slice'> [ / <'border-image-width'> | / <'border-image-width'>? / <'border-image-outset'> ]? || <'border-image-repeat'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": [
+      "border-image-slice",
+      "border-image-width"
+    ],
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-image-source",
+      "border-image-slice",
+      "border-image-width",
+      "border-image-outset",
+      "border-image-repeat"
+    ],
+    "appliesto": "allElementsExceptTableElementsWhenCollapse",
+    "computed": [
+      "border-image-outset",
+      "border-image-repeat",
+      "border-image-slice",
+      "border-image-source",
+      "border-image-width"
+    ],
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-image"
+  },
+  "border-image-outset": {
+    "syntax": "[ <length> | <number> ]{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptTableElementsWhenCollapse",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-image-outset"
+  },
+  "border-image-repeat": {
+    "syntax": "[ stretch | repeat | round | space ]{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "stretch",
+    "appliesto": "allElementsExceptTableElementsWhenCollapse",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-image-repeat"
+  },
+  "border-image-slice": {
+    "syntax": "<number-percentage>{1,4} && fill?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "referToSizeOfBorderImage",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "100%",
+    "appliesto": "allElementsExceptTableElementsWhenCollapse",
+    "computed": "oneToFourPercentagesOrAbsoluteLengthsPlusFill",
+    "order": "percentagesOrLengthsFollowedByFill",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-image-slice"
+  },
+  "border-image-source": {
+    "syntax": "none | <image>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsExceptTableElementsWhenCollapse",
+    "computed": "noneOrImageWithAbsoluteURI",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-image-source"
+  },
+  "border-image-width": {
+    "syntax": "[ <length-percentage> | <number> | auto ]{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "referToWidthOrHeightOfBorderImageArea",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "1",
+    "appliesto": "allElementsExceptTableElementsWhenCollapse",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-image-width"
+  },
+  "border-inline": {
+    "syntax": "<'border-top-width'> || <'border-top-style'> || <'color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": [
+      "border-top-width",
+      "border-top-style",
+      "border-top-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-top-width",
+      "border-top-style",
+      "border-top-color"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline"
+  },
+  "border-inline-end": {
+    "syntax": "<'border-top-width'> || <'border-top-style'> || <'color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-inline-end-color",
+      "border-inline-end-style",
+      "border-inline-end-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": [
+      "border-width",
+      "border-style",
+      "color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-width",
+      "border-style",
+      "border-inline-end-color"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-end"
+  },
+  "border-inline-color": {
+    "syntax": "<'border-top-color'>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-color"
+  },
+  "border-inline-style": {
+    "syntax": "<'border-top-style'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-style"
+  },
+  "border-inline-width": {
+    "syntax": "<'border-top-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthZeroIfBorderStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-width"
+  },
+  "border-inline-end-color": {
+    "syntax": "<'border-top-color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-end-color"
+  },
+  "border-inline-end-style": {
+    "syntax": "<'border-top-style'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-end-style"
+  },
+  "border-inline-end-width": {
+    "syntax": "<'border-top-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthZeroIfBorderStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-end-width"
+  },
+  "border-inline-start": {
+    "syntax": "<'border-top-width'> || <'border-top-style'> || <'color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-inline-start-color",
+      "border-inline-start-style",
+      "border-inline-start-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": [
+      "border-width",
+      "border-style",
+      "color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-width",
+      "border-style",
+      "border-inline-start-color"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-start"
+  },
+  "border-inline-start-color": {
+    "syntax": "<'border-top-color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-start-color"
+  },
+  "border-inline-start-style": {
+    "syntax": "<'border-top-style'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-start-style"
+  },
+  "border-inline-start-width": {
+    "syntax": "<'border-top-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthZeroIfBorderStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-inline-start-width"
+  },
+  "border-left": {
+    "syntax": "<line-width> || <line-style> || <color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-left-color",
+      "border-left-style",
+      "border-left-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-left-width",
+      "border-left-style",
+      "border-left-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-left-width",
+      "border-left-style",
+      "border-left-color"
+    ],
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-left"
+  },
+  "border-left-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-left-color"
+  },
+  "border-left-style": {
+    "syntax": "<line-style>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-left-style"
+  },
+  "border-left-width": {
+    "syntax": "<line-width>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOr0IfBorderLeftStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-left-width"
+  },
+  "border-radius": {
+    "syntax": "<length-percentage>{1,4} [ / <length-percentage>{1,4} ]?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-top-left-radius",
+      "border-top-right-radius",
+      "border-bottom-right-radius",
+      "border-bottom-left-radius"
+    ],
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-top-left-radius",
+      "border-top-right-radius",
+      "border-bottom-right-radius",
+      "border-bottom-left-radius"
+    ],
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": [
+      "border-bottom-left-radius",
+      "border-bottom-right-radius",
+      "border-top-left-radius",
+      "border-top-right-radius"
+    ],
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-radius"
+  },
+  "border-right": {
+    "syntax": "<line-width> || <line-style> || <color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-right-color",
+      "border-right-style",
+      "border-right-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-right-width",
+      "border-right-style",
+      "border-right-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-right-width",
+      "border-right-style",
+      "border-right-color"
+    ],
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-right"
+  },
+  "border-right-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-right-color"
+  },
+  "border-right-style": {
+    "syntax": "<line-style>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-right-style"
+  },
+  "border-right-width": {
+    "syntax": "<line-width>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOr0IfBorderRightStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-right-width"
+  },
+  "border-spacing": {
+    "syntax": "<length> <length>?",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Table"
+    ],
+    "initial": "0",
+    "appliesto": "tableElements",
+    "computed": "twoAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-spacing"
+  },
+  "border-start-end-radius": {
+    "syntax": "<length-percentage>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": "twoAbsoluteLengthOrPercentages",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-start-end-radius"
+  },
+  "border-start-start-radius": {
+    "syntax": "<length-percentage>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": "twoAbsoluteLengthOrPercentages",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-start-start-radius"
+  },
+  "border-style": {
+    "syntax": "<line-style>{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-top-style",
+      "border-right-style",
+      "border-bottom-style",
+      "border-left-style"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-bottom-style",
+      "border-left-style",
+      "border-right-style",
+      "border-top-style"
+    ],
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-style"
+  },
+  "border-top": {
+    "syntax": "<line-width> || <line-style> || <color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-top-color",
+      "border-top-style",
+      "border-top-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-top-width",
+      "border-top-style",
+      "border-top-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-top-width",
+      "border-top-style",
+      "border-top-color"
+    ],
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-top"
+  },
+  "border-top-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-top-color"
+  },
+  "border-top-left-radius": {
+    "syntax": "<length-percentage>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": "twoAbsoluteLengthOrPercentages",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-top-left-radius"
+  },
+  "border-top-right-radius": {
+    "syntax": "<length-percentage>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfBorderBox",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsUAsNotRequiredWhenCollapse",
+    "computed": "twoAbsoluteLengthOrPercentages",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-top-right-radius"
+  },
+  "border-top-style": {
+    "syntax": "<line-style>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-top-style"
+  },
+  "border-top-width": {
+    "syntax": "<line-width>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOr0IfBorderTopStyleNoneOrHidden",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-top-width"
+  },
+  "border-width": {
+    "syntax": "<line-width>{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "border-bottom-width",
+      "border-left-width",
+      "border-right-width",
+      "border-top-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": [
+      "border-top-width",
+      "border-right-width",
+      "border-bottom-width",
+      "border-left-width"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "border-bottom-width",
+      "border-left-width",
+      "border-right-width",
+      "border-top-width"
+    ],
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/border-width"
+  },
+  "bottom": {
+    "syntax": "<length> | <percentage> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToContainingBlockHeight",
+    "groups": [
+      "CSS Positioning"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/bottom"
+  },
+  "box-align": {
+    "syntax": "start | center | end | baseline | stretch",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "stretch",
+    "appliesto": "elementsWithDisplayBoxOrInlineBox",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-align"
+  },
+  "box-decoration-break": {
+    "syntax": "slice | clone",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fragmentation"
+    ],
+    "initial": "slice",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-decoration-break"
+  },
+  "box-direction": {
+    "syntax": "normal | reverse | inherit",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "normal",
+    "appliesto": "elementsWithDisplayBoxOrInlineBox",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-direction"
+  },
+  "box-flex": {
+    "syntax": "<number>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "0",
+    "appliesto": "directChildrenOfElementsWithDisplayMozBoxMozInlineBox",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-flex"
+  },
+  "box-flex-group": {
+    "syntax": "<integer>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "1",
+    "appliesto": "inFlowChildrenOfBoxElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-flex-group"
+  },
+  "box-lines": {
+    "syntax": "single | multiple",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "single",
+    "appliesto": "boxElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-lines"
+  },
+  "box-ordinal-group": {
+    "syntax": "<integer>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "1",
+    "appliesto": "childrenOfBoxElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-ordinal-group"
+  },
+  "box-orient": {
+    "syntax": "horizontal | vertical | inline-axis | block-axis | inherit",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "inlineAxisHorizontalInXUL",
+    "appliesto": "elementsWithDisplayBoxOrInlineBox",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-orient"
+  },
+  "box-pack": {
+    "syntax": "start | center | end | justify",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions",
+      "WebKit Extensions"
+    ],
+    "initial": "start",
+    "appliesto": "elementsWithDisplayMozBoxMozInlineBox",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-pack"
+  },
+  "box-shadow": {
+    "syntax": "none | <shadow>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "shadowList",
+    "percentages": "no",
+    "groups": [
+      "CSS Backgrounds and Borders"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthsSpecifiedColorAsSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-shadow"
+  },
+  "box-sizing": {
+    "syntax": "content-box | border-box",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "content-box",
+    "appliesto": "allElementsAcceptingWidthOrHeight",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/box-sizing"
+  },
+  "break-after": {
+    "syntax": "auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fragmentation"
+    ],
+    "initial": "auto",
+    "appliesto": "blockLevelElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/break-after"
+  },
+  "break-before": {
+    "syntax": "auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fragmentation"
+    ],
+    "initial": "auto",
+    "appliesto": "blockLevelElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/break-before"
+  },
+  "break-inside": {
+    "syntax": "auto | avoid | avoid-page | avoid-column | avoid-region",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fragmentation"
+    ],
+    "initial": "auto",
+    "appliesto": "blockLevelElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/break-inside"
+  },
+  "caption-side": {
+    "syntax": "top | bottom | block-start | block-end | inline-start | inline-end",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Table"
+    ],
+    "initial": "top",
+    "appliesto": "tableCaptionElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/caption-side"
+  },
+  "caret-color": {
+    "syntax": "auto | <color>",
+    "media": "interactive",
+    "inherited": true,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asAutoOrColor",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/caret-color"
+  },
+  "clear": {
+    "syntax": "none | left | right | both | inline-start | inline-end",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Positioning"
+    ],
+    "initial": "none",
+    "appliesto": "blockLevelElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/clear"
+  },
+  "clip": {
+    "syntax": "<shape> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "rectangle",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "auto",
+    "appliesto": "absolutelyPositionedElements",
+    "computed": "autoOrRectangle",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/clip"
+  },
+  "clip-path": {
+    "syntax": "<clip-source> | [ <basic-shape> || <geometry-box> ] | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "basicShapeOtherwiseNo",
+    "percentages": "referToReferenceBoxWhenSpecifiedOtherwiseBorderBox",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecifiedURLsAbsolute",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/clip-path"
+  },
+  "color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Color"
+    ],
+    "initial": "variesFromBrowserToBrowser",
+    "appliesto": "allElements",
+    "computed": "translucentValuesRGBAOtherwiseRGB",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/color"
+  },
+  "color-adjust": {
+    "syntax": "economy | exact",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Color"
+    ],
+    "initial": "economy",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/color-adjust"
+  },
+  "column-count": {
+    "syntax": "<integer> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "integer",
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": "auto",
+    "appliesto": "blockContainersExceptTableWrappers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-count"
+  },
+  "column-fill": {
+    "syntax": "auto | balance | balance-all",
+    "media": "visualInContinuousMediaNoEffectInOverflowColumns",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": "balance",
+    "appliesto": "multicolElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-fill"
+  },
+  "column-gap": {
+    "syntax": "normal | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "normal",
+    "appliesto": "multiColumnElementsFlexContainersGridContainers",
+    "computed": "asSpecifiedWithLengthsAbsoluteAndNormalComputingToZeroExceptMultiColumn",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-gap"
+  },
+  "column-rule": {
+    "syntax": "<'column-rule-width'> || <'column-rule-style'> || <'column-rule-color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "column-rule-color",
+      "column-rule-style",
+      "column-rule-width"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": [
+      "column-rule-width",
+      "column-rule-style",
+      "column-rule-color"
+    ],
+    "appliesto": "multicolElements",
+    "computed": [
+      "column-rule-color",
+      "column-rule-style",
+      "column-rule-width"
+    ],
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-rule"
+  },
+  "column-rule-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "multicolElements",
+    "computed": "computedColor",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-rule-color"
+  },
+  "column-rule-style": {
+    "syntax": "<'border-style'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": "none",
+    "appliesto": "multicolElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-rule-style"
+  },
+  "column-rule-width": {
+    "syntax": "<'border-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": "medium",
+    "appliesto": "multicolElements",
+    "computed": "absoluteLength0IfColumnRuleStyleNoneOrHidden",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-rule-width"
+  },
+  "column-span": {
+    "syntax": "none | all",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": "none",
+    "appliesto": "inFlowBlockLevelElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-span"
+  },
+  "column-width": {
+    "syntax": "<length> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": "auto",
+    "appliesto": "blockContainersExceptTableWrappers",
+    "computed": "absoluteLengthZeroOrLarger",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-width"
+  },
+  "columns": {
+    "syntax": "<'column-width'> || <'column-count'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "column-width",
+      "column-count"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Columns"
+    ],
+    "initial": [
+      "column-width",
+      "column-count"
+    ],
+    "appliesto": "blockContainersExceptTableWrappers",
+    "computed": [
+      "column-width",
+      "column-count"
+    ],
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/columns"
+  },
+  "contain": {
+    "syntax": "none | strict | content | [ size || layout || style || paint ]",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Containment"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/contain"
+  },
+  "content": {
+    "syntax": "normal | none | [ <content-replacement> | <content-list> ] [/ <string> ]?",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Generated Content"
+    ],
+    "initial": "normal",
+    "appliesto": "beforeAndAfterPseudos",
+    "computed": "normalOnElementsForPseudosNoneAbsoluteURIStringOrAsSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/content"
+  },
+  "counter-increment": {
+    "syntax": "[ <custom-ident> <integer>? ]+ | none",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Counter Styles"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/counter-increment"
+  },
+  "counter-reset": {
+    "syntax": "[ <custom-ident> <integer>? ]+ | none",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Counter Styles"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/counter-reset"
+  },
+  "counter-set": {
+    "syntax": "[ <custom-ident> <integer>? ]+ | none",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Counter Styles"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/counter-set"
+  },
+  "cursor": {
+    "syntax": "[ [ <url> [ <x> <y> ]? , ]* [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out | grab | grabbing ] ]",
+    "media": [
+      "visual",
+      "interactive"
+    ],
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedURLsAbsolute",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/cursor"
+  },
+  "direction": {
+    "syntax": "ltr | rtl",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Writing Modes"
+    ],
+    "initial": "ltr",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/direction"
+  },
+  "display": {
+    "syntax": "[ <display-outside> || <display-inside> ] | <display-listitem> | <display-internal> | <display-box> | <display-legacy>",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Display"
+    ],
+    "initial": "inline",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedExceptPositionedFloatingAndRootElementsKeywordMaybeDifferent",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/display"
+  },
+  "empty-cells": {
+    "syntax": "show | hide",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Table"
+    ],
+    "initial": "show",
+    "appliesto": "tableCellElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/empty-cells"
+  },
+  "filter": {
+    "syntax": "none | <filter-function-list>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "filterList",
+    "percentages": "no",
+    "groups": [
+      "Filter Effects"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/filter"
+  },
+  "flex": {
+    "syntax": "none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "flex-grow",
+      "flex-shrink",
+      "flex-basis"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Flexible Box Layout"
+    ],
+    "initial": [
+      "flex-grow",
+      "flex-shrink",
+      "flex-basis"
+    ],
+    "appliesto": "flexItemsAndInFlowPseudos",
+    "computed": [
+      "flex-grow",
+      "flex-shrink",
+      "flex-basis"
+    ],
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/flex"
+  },
+  "flex-basis": {
+    "syntax": "content | <'width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToFlexContainersInnerMainSize",
+    "groups": [
+      "CSS Flexible Box Layout"
+    ],
+    "initial": "auto",
+    "appliesto": "flexItemsAndInFlowPseudos",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "lengthOrPercentageBeforeKeywordIfBothPresent",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/flex-basis"
+  },
+  "flex-direction": {
+    "syntax": "row | row-reverse | column | column-reverse",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Flexible Box Layout"
+    ],
+    "initial": "row",
+    "appliesto": "flexContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/flex-direction"
+  },
+  "flex-flow": {
+    "syntax": "<'flex-direction'> || <'flex-wrap'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Flexible Box Layout"
+    ],
+    "initial": [
+      "flex-direction",
+      "flex-wrap"
+    ],
+    "appliesto": "flexContainers",
+    "computed": [
+      "flex-direction",
+      "flex-wrap"
+    ],
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/flex-flow"
+  },
+  "flex-grow": {
+    "syntax": "<number>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "number",
+    "percentages": "no",
+    "groups": [
+      "CSS Flexible Box Layout"
+    ],
+    "initial": "0",
+    "appliesto": "flexItemsAndInFlowPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/flex-grow"
+  },
+  "flex-shrink": {
+    "syntax": "<number>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "number",
+    "percentages": "no",
+    "groups": [
+      "CSS Flexible Box Layout"
+    ],
+    "initial": "1",
+    "appliesto": "flexItemsAndInFlowPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/flex-shrink"
+  },
+  "flex-wrap": {
+    "syntax": "nowrap | wrap | wrap-reverse",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Flexible Box Layout"
+    ],
+    "initial": "nowrap",
+    "appliesto": "flexContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/flex-wrap"
+  },
+  "float": {
+    "syntax": "left | right | none | inline-start | inline-end",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Positioning"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsNoEffectIfDisplayNone",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/float"
+  },
+  "font": {
+    "syntax": "[ [ <'font-style'> || <font-variant-css21> || <'font-weight'> || <'font-stretch'> ]? <'font-size'> [ / <'line-height'> ]? <'font-family'> ] | caption | icon | menu | message-box | small-caption | status-bar",
+    "media": "visual",
+    "inherited": true,
+    "animationType": [
+      "font-style",
+      "font-variant",
+      "font-weight",
+      "font-stretch",
+      "font-size",
+      "line-height",
+      "font-family"
+    ],
+    "percentages": [
+      "font-size",
+      "line-height"
+    ],
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": [
+      "font-style",
+      "font-variant",
+      "font-weight",
+      "font-stretch",
+      "font-size",
+      "line-height",
+      "font-family"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "font-style",
+      "font-variant",
+      "font-weight",
+      "font-stretch",
+      "font-size",
+      "line-height",
+      "font-family"
+    ],
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font"
+  },
+  "font-family": {
+    "syntax": "[ <family-name> | <generic-family> ]#",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "dependsOnUserAgent",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-family"
+  },
+  "font-feature-settings": {
+    "syntax": "normal | <feature-tag-value>#",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-feature-settings"
+  },
+  "font-kerning": {
+    "syntax": "auto | normal | none",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-kerning"
+  },
+  "font-language-override": {
+    "syntax": "normal | <string>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-language-override"
+  },
+  "font-optical-sizing": {
+    "syntax": "auto | none",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-optical-sizing"
+  },
+  "font-variation-settings": {
+    "syntax": "normal | [ <string> <number> ]#",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "transform",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-variation-settings"
+  },
+  "font-size": {
+    "syntax": "<absolute-size> | <relative-size> | <length-percentage>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "length",
+    "percentages": "referToParentElementsFontSize",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-size"
+  },
+  "font-size-adjust": {
+    "syntax": "none | <number>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "number",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-size-adjust"
+  },
+  "font-smooth": {
+    "syntax": "auto | never | always | <absolute-size> | <length>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-smooth"
+  },
+  "font-stretch": {
+    "syntax": "<font-stretch-absolute>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "fontStretch",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-stretch"
+  },
+  "font-style": {
+    "syntax": "normal | italic | oblique <angle>?",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-style"
+  },
+  "font-synthesis": {
+    "syntax": "none | [ weight || style ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "weight style",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-synthesis"
+  },
+  "font-variant": {
+    "syntax": "normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> || stylistic( <feature-value-name> ) || historical-forms || styleset( <feature-value-name># ) || character-variant( <feature-value-name># ) || swash( <feature-value-name> ) || ornaments( <feature-value-name> ) || annotation( <feature-value-name> ) || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero || <east-asian-variant-values> || <east-asian-width-values> || ruby ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-variant"
+  },
+  "font-variant-alternates": {
+    "syntax": "normal | [ stylistic( <feature-value-name> ) || historical-forms || styleset( <feature-value-name># ) || character-variant( <feature-value-name># ) || swash( <feature-value-name> ) || ornaments( <feature-value-name> ) || annotation( <feature-value-name> ) ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-variant-alternates"
+  },
+  "font-variant-caps": {
+    "syntax": "normal | small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-variant-caps"
+  },
+  "font-variant-east-asian": {
+    "syntax": "normal | [ <east-asian-variant-values> || <east-asian-width-values> || ruby ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-variant-east-asian"
+  },
+  "font-variant-ligatures": {
+    "syntax": "normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-variant-ligatures"
+  },
+  "font-variant-numeric": {
+    "syntax": "normal | [ <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-variant-numeric"
+  },
+  "font-variant-position": {
+    "syntax": "normal | sub | super",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-variant-position"
+  },
+  "font-weight": {
+    "syntax": "<font-weight-absolute> | bolder | lighter",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "fontWeight",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "keywordOrNumericalValueBolderLighterTransformedToRealValue",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/font-weight"
+  },
+  "gap": {
+    "syntax": "<'row-gap'> <'column-gap'>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "row-gap",
+      "column-gap"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": [
+      "row-gap",
+      "column-gap"
+    ],
+    "appliesto": "multiColumnElementsFlexContainersGridContainers",
+    "computed": [
+      "row-gap",
+      "column-gap"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/gap"
+  },
+  "grid": {
+    "syntax": "<'grid-template'> | <'grid-template-rows'> / [ auto-flow && dense? ] <'grid-auto-columns'>? | [ auto-flow && dense? ] <'grid-auto-rows'>? / <'grid-template-columns'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": [
+      "grid-template-rows",
+      "grid-template-columns",
+      "grid-auto-rows",
+      "grid-auto-columns"
+    ],
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": [
+      "grid-template-rows",
+      "grid-template-columns",
+      "grid-template-areas",
+      "grid-auto-rows",
+      "grid-auto-columns",
+      "grid-auto-flow",
+      "grid-column-gap",
+      "grid-row-gap",
+      "column-gap",
+      "row-gap"
+    ],
+    "appliesto": "gridContainers",
+    "computed": [
+      "grid-template-rows",
+      "grid-template-columns",
+      "grid-template-areas",
+      "grid-auto-rows",
+      "grid-auto-columns",
+      "grid-auto-flow",
+      "grid-column-gap",
+      "grid-row-gap",
+      "column-gap",
+      "row-gap"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid"
+  },
+  "grid-area": {
+    "syntax": "<grid-line> [ / <grid-line> ]{0,3}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": [
+      "grid-row-start",
+      "grid-column-start",
+      "grid-row-end",
+      "grid-column-end"
+    ],
+    "appliesto": "gridItemsAndBoxesWithinGridContainer",
+    "computed": [
+      "grid-row-start",
+      "grid-column-start",
+      "grid-row-end",
+      "grid-column-end"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-area"
+  },
+  "grid-auto-columns": {
+    "syntax": "<track-size>+",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "auto",
+    "appliesto": "gridContainers",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-auto-columns"
+  },
+  "grid-auto-flow": {
+    "syntax": "[ row | column ] || dense",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "row",
+    "appliesto": "gridContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-auto-flow"
+  },
+  "grid-auto-rows": {
+    "syntax": "<track-size>+",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "auto",
+    "appliesto": "gridContainers",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-auto-rows"
+  },
+  "grid-column": {
+    "syntax": "<grid-line> [ / <grid-line> ]?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": [
+      "grid-column-start",
+      "grid-column-end"
+    ],
+    "appliesto": "gridItemsAndBoxesWithinGridContainer",
+    "computed": [
+      "grid-column-start",
+      "grid-column-end"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-column"
+  },
+  "grid-column-end": {
+    "syntax": "<grid-line>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "auto",
+    "appliesto": "gridItemsAndBoxesWithinGridContainer",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-column-end"
+  },
+  "grid-column-gap": {
+    "syntax": "<length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "0",
+    "appliesto": "gridContainers",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/column-gap"
+  },
+  "grid-column-start": {
+    "syntax": "<grid-line>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "auto",
+    "appliesto": "gridItemsAndBoxesWithinGridContainer",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-column-start"
+  },
+  "grid-gap": {
+    "syntax": "<'grid-row-gap'> <'grid-column-gap'>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "grid-row-gap",
+      "grid-column-gap"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": [
+      "grid-row-gap",
+      "grid-column-gap"
+    ],
+    "appliesto": "gridContainers",
+    "computed": [
+      "grid-row-gap",
+      "grid-column-gap"
+    ],
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/gap"
+  },
+  "grid-row": {
+    "syntax": "<grid-line> [ / <grid-line> ]?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": [
+      "grid-row-start",
+      "grid-row-end"
+    ],
+    "appliesto": "gridItemsAndBoxesWithinGridContainer",
+    "computed": [
+      "grid-row-start",
+      "grid-row-end"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-row"
+  },
+  "grid-row-end": {
+    "syntax": "<grid-line>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "auto",
+    "appliesto": "gridItemsAndBoxesWithinGridContainer",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-row-end"
+  },
+  "grid-row-gap": {
+    "syntax": "<length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "0",
+    "appliesto": "gridContainers",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/row-gap"
+  },
+  "grid-row-start": {
+    "syntax": "<grid-line>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "auto",
+    "appliesto": "gridItemsAndBoxesWithinGridContainer",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-row-start"
+  },
+  "grid-template": {
+    "syntax": "none | [ <'grid-template-rows'> / <'grid-template-columns'> ] | [ <line-names>? <string> <track-size>? <line-names>? ]+ [ / <explicit-track-list> ]?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": [
+      "grid-template-columns",
+      "grid-template-rows"
+    ],
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": [
+      "grid-template-columns",
+      "grid-template-rows",
+      "grid-template-areas"
+    ],
+    "appliesto": "gridContainers",
+    "computed": [
+      "grid-template-columns",
+      "grid-template-rows",
+      "grid-template-areas"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-template"
+  },
+  "grid-template-areas": {
+    "syntax": "none | <string>+",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "none",
+    "appliesto": "gridContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-template-areas"
+  },
+  "grid-template-columns": {
+    "syntax": "none | <track-list> | <auto-track-list> | subgrid <line-name-list>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "simpleListOfLpcDifferenceLpc",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "none",
+    "appliesto": "gridContainers",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-template-columns"
+  },
+  "grid-template-rows": {
+    "syntax": "none | <track-list> | <auto-track-list> | subgrid <line-name-list>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "simpleListOfLpcDifferenceLpc",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "none",
+    "appliesto": "gridContainers",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/grid-template-rows"
+  },
+  "hanging-punctuation": {
+    "syntax": "none | [ first || [ force-end | allow-end ] || last ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/hanging-punctuation"
+  },
+  "height": {
+    "syntax": "auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "regardingHeightOfGeneratedBoxContainingBlockPercentagesRelativeToContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsButNonReplacedAndTableColumns",
+    "computed": "percentageAutoOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/height"
+  },
+  "hyphens": {
+    "syntax": "none | manual | auto",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "manual",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/hyphens"
+  },
+  "image-orientation": {
+    "syntax": "from-image | <angle> | [ <angle>? flip ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Images"
+    ],
+    "initial": "from-image",
+    "appliesto": "allElements",
+    "computed": "angleRoundedToNextQuarter",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/image-orientation"
+  },
+  "image-rendering": {
+    "syntax": "auto | crisp-edges | pixelated",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Images"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/image-rendering"
+  },
+  "image-resolution": {
+    "syntax": "[ from-image || <resolution> ] && snap?",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Images"
+    ],
+    "initial": "1dppx",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedWithExceptionOfResolution",
+    "order": "uniqueOrder",
+    "status": "experimental"
+  },
+  "ime-mode": {
+    "syntax": "auto | normal | active | inactive | disabled",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "auto",
+    "appliesto": "textFields",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/ime-mode"
+  },
+  "initial-letter": {
+    "syntax": "normal | [ <number> <integer>? ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Inline"
+    ],
+    "initial": "normal",
+    "appliesto": "firstLetterPseudoElementsAndInlineLevelFirstChildren",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/initial-letter"
+  },
+  "initial-letter-align": {
+    "syntax": "[ auto | alphabetic | hanging | ideographic ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Inline"
+    ],
+    "initial": "auto",
+    "appliesto": "firstLetterPseudoElementsAndInlineLevelFirstChildren",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/initial-letter-align"
+  },
+  "inline-size": {
+    "syntax": "<'width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "inlineSizeOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "sameAsWidthAndHeight",
+    "computed": "sameAsWidthAndHeight",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/inline-size"
+  },
+  "inset": {
+    "syntax": "<'top'>{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "logicalHeightOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "sameAsBoxOffsets",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/inset"
+  },
+  "inset-block": {
+    "syntax": "<'top'>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "logicalHeightOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "sameAsBoxOffsets",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/inset-block"
+  },
+  "inset-block-end": {
+    "syntax": "<'top'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "logicalHeightOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "sameAsBoxOffsets",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/inset-block-end"
+  },
+  "inset-block-start": {
+    "syntax": "<'top'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "logicalHeightOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "sameAsBoxOffsets",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/inset-block-start"
+  },
+  "inset-inline": {
+    "syntax": "<'top'>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "sameAsBoxOffsets",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/inset-inline"
+  },
+  "inset-inline-end": {
+    "syntax": "<'top'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "sameAsBoxOffsets",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/inset-inline-end"
+  },
+  "inset-inline-start": {
+    "syntax": "<'top'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "sameAsBoxOffsets",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/inset-inline-start"
+  },
+  "isolation": {
+    "syntax": "auto | isolate",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Compositing and Blending"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsSVGContainerGraphicsAndGraphicsReferencingElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/isolation"
+  },
+  "justify-content": {
+    "syntax": "normal | <content-distribution> | <overflow-position>? [ <content-position> | left | right ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "normal",
+    "appliesto": "flexContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/justify-content"
+  },
+  "justify-items": {
+    "syntax": "normal | stretch | <baseline-position> | <overflow-position>? [ <self-position> | left | right ] | legacy | legacy && [ left | right | center ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "legacy",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/justify-items"
+  },
+  "justify-self": {
+    "syntax": "auto | normal | stretch | <baseline-position> | <overflow-position>? [ <self-position> | left | right ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "auto",
+    "appliesto": "blockLevelBoxesAndAbsolutelyPositionedBoxesAndGridItems",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/justify-self"
+  },
+  "justify-tracks": {
+    "syntax": "[ normal | <content-distribution> | <overflow-position>? [ <content-position> | left | right ] ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "normal",
+    "appliesto": "gridContainersWithMasonryLayoutInTheirInlineAxis",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/justify-tracks"
+  },
+  "left": {
+    "syntax": "<length> | <percentage> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Positioning"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/left"
+  },
+  "letter-spacing": {
+    "syntax": "normal | <length>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "optimumValueOfAbsoluteLengthOrNormal",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/letter-spacing"
+  },
+  "line-break": {
+    "syntax": "auto | loose | normal | strict | anywhere",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/line-break"
+  },
+  "line-clamp": {
+    "syntax": "none | <integer>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "integer",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "none",
+    "appliesto": "blockContainersExceptMultiColumnContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "experimental"
+  },
+  "line-height": {
+    "syntax": "normal | <number> | <length> | <percentage>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "numberOrLength",
+    "percentages": "referToElementFontSize",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "absoluteLengthOrAsSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/line-height"
+  },
+  "line-height-step": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fonts"
+    ],
+    "initial": "0",
+    "appliesto": "blockContainers",
+    "computed": "absoluteLength",
+    "order": "perGrammar",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/line-height-step"
+  },
+  "list-style": {
+    "syntax": "<'list-style-type'> || <'list-style-position'> || <'list-style-image'>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Lists and Counters"
+    ],
+    "initial": [
+      "list-style-type",
+      "list-style-position",
+      "list-style-image"
+    ],
+    "appliesto": "listItems",
+    "computed": [
+      "list-style-image",
+      "list-style-position",
+      "list-style-type"
+    ],
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/list-style"
+  },
+  "list-style-image": {
+    "syntax": "<url> | none",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Lists and Counters"
+    ],
+    "initial": "none",
+    "appliesto": "listItems",
+    "computed": "noneOrImageWithAbsoluteURI",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/list-style-image"
+  },
+  "list-style-position": {
+    "syntax": "inside | outside",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Lists and Counters"
+    ],
+    "initial": "outside",
+    "appliesto": "listItems",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/list-style-position"
+  },
+  "list-style-type": {
+    "syntax": "<counter-style> | <string> | none",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Lists and Counters"
+    ],
+    "initial": "disc",
+    "appliesto": "listItems",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/list-style-type"
+  },
+  "margin": {
+    "syntax": "[ <length> | <percentage> | auto ]{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": [
+      "margin-bottom",
+      "margin-left",
+      "margin-right",
+      "margin-top"
+    ],
+    "appliesto": "allElementsExceptTableDisplayTypes",
+    "computed": [
+      "margin-bottom",
+      "margin-left",
+      "margin-right",
+      "margin-top"
+    ],
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin"
+  },
+  "margin-block": {
+    "syntax": "<'margin-left'>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "dependsOnLayoutModel",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsMargin",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-block"
+  },
+  "margin-block-end": {
+    "syntax": "<'margin-left'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "dependsOnLayoutModel",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsMargin",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-block-end"
+  },
+  "margin-block-start": {
+    "syntax": "<'margin-left'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "dependsOnLayoutModel",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsMargin",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-block-start"
+  },
+  "margin-bottom": {
+    "syntax": "<length> | <percentage> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptTableDisplayTypes",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-bottom"
+  },
+  "margin-inline": {
+    "syntax": "<'margin-left'>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "dependsOnLayoutModel",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsMargin",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-inline"
+  },
+  "margin-inline-end": {
+    "syntax": "<'margin-left'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "dependsOnLayoutModel",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsMargin",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-inline-end"
+  },
+  "margin-inline-start": {
+    "syntax": "<'margin-left'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "dependsOnLayoutModel",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsMargin",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-inline-start"
+  },
+  "margin-left": {
+    "syntax": "<length> | <percentage> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptTableDisplayTypes",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-left"
+  },
+  "margin-right": {
+    "syntax": "<length> | <percentage> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptTableDisplayTypes",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-right"
+  },
+  "margin-top": {
+    "syntax": "<length> | <percentage> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptTableDisplayTypes",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-top"
+  },
+  "margin-trim": {
+    "syntax": "none | in-flow | all",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "none",
+    "appliesto": "blockContainersAndMultiColumnContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/margin-trim"
+  },
+  "mask": {
+    "syntax": "<mask-layer>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "mask-image",
+      "mask-mode",
+      "mask-repeat",
+      "mask-position",
+      "mask-clip",
+      "mask-origin",
+      "mask-size",
+      "mask-composite"
+    ],
+    "percentages": [
+      "mask-position"
+    ],
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": [
+      "mask-image",
+      "mask-mode",
+      "mask-repeat",
+      "mask-position",
+      "mask-clip",
+      "mask-origin",
+      "mask-size",
+      "mask-composite"
+    ],
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": [
+      "mask-image",
+      "mask-mode",
+      "mask-repeat",
+      "mask-position",
+      "mask-clip",
+      "mask-origin",
+      "mask-size",
+      "mask-composite"
+    ],
+    "order": "perGrammar",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask"
+  },
+  "mask-border": {
+    "syntax": "<'mask-border-source'> || <'mask-border-slice'> [ / <'mask-border-width'>? [ / <'mask-border-outset'> ]? ]? || <'mask-border-repeat'> || <'mask-border-mode'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "mask-border-mode",
+      "mask-border-outset",
+      "mask-border-repeat",
+      "mask-border-slice",
+      "mask-border-source",
+      "mask-border-width"
+    ],
+    "percentages": [
+      "mask-border-slice",
+      "mask-border-width"
+    ],
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": [
+      "mask-border-mode",
+      "mask-border-outset",
+      "mask-border-repeat",
+      "mask-border-slice",
+      "mask-border-source",
+      "mask-border-width"
+    ],
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": [
+      "mask-border-mode",
+      "mask-border-outset",
+      "mask-border-repeat",
+      "mask-border-slice",
+      "mask-border-source",
+      "mask-border-width"
+    ],
+    "order": "perGrammar",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-border"
+  },
+  "mask-border-mode": {
+    "syntax": "luminance | alpha",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "alpha",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-border-mode"
+  },
+  "mask-border-outset": {
+    "syntax": "[ <length> | <number> ]{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-border-outset"
+  },
+  "mask-border-repeat": {
+    "syntax": "[ stretch | repeat | round | space ]{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "stretch",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-border-repeat"
+  },
+  "mask-border-slice": {
+    "syntax": "<number-percentage>{1,4} fill?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "referToSizeOfMaskBorderImage",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-border-slice"
+  },
+  "mask-border-source": {
+    "syntax": "none | <image>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecifiedURLsAbsolute",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-border-source"
+  },
+  "mask-border-width": {
+    "syntax": "[ <length-percentage> | <number> | auto ]{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "relativeToMaskBorderImageArea",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-border-width"
+  },
+  "mask-clip": {
+    "syntax": "[ <geometry-box> | no-clip ]#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "border-box",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-clip"
+  },
+  "mask-composite": {
+    "syntax": "<compositing-operator>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "add",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-composite"
+  },
+  "mask-image": {
+    "syntax": "<mask-reference>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecifiedURLsAbsolute",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-image"
+  },
+  "mask-mode": {
+    "syntax": "<masking-mode>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "match-source",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-mode"
+  },
+  "mask-origin": {
+    "syntax": "<geometry-box>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "border-box",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-origin"
+  },
+  "mask-position": {
+    "syntax": "<position>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "repeatableListOfSimpleListOfLpc",
+    "percentages": "referToSizeOfMaskPaintingArea",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "center",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "consistsOfTwoKeywordsForOriginAndOffsets",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-position"
+  },
+  "mask-repeat": {
+    "syntax": "<repeat-style>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "no-repeat",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "consistsOfTwoDimensionKeywords",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-repeat"
+  },
+  "mask-size": {
+    "syntax": "<bg-size>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "repeatableListOfSimpleListOfLpc",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsSVGContainerElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-size"
+  },
+  "mask-type": {
+    "syntax": "luminance | alpha",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Masking"
+    ],
+    "initial": "luminance",
+    "appliesto": "maskElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mask-type"
+  },
+  "masonry-auto-flow": {
+    "syntax": "[ pack | next ] || [ definite-first | ordered ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Grid Layout"
+    ],
+    "initial": "pack",
+    "appliesto": "gridContainersWithMasonryLayout",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/masonry-auto-flow"
+  },
+  "math-style": {
+    "syntax": "normal | compact",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "notAnimatable",
+    "percentages": "no",
+    "groups": [
+      "MathML"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/math-style"
+  },
+  "max-block-size": {
+    "syntax": "<'max-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "blockSizeOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsWidthAndHeight",
+    "computed": "sameAsMaxWidthAndMaxHeight",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/max-block-size"
+  },
+  "max-height": {
+    "syntax": "none | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "regardingHeightOfGeneratedBoxContainingBlockPercentagesNone",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsButNonReplacedAndTableColumns",
+    "computed": "percentageAsSpecifiedAbsoluteLengthOrNone",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/max-height"
+  },
+  "max-inline-size": {
+    "syntax": "<'max-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "inlineSizeOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsWidthAndHeight",
+    "computed": "sameAsMaxWidthAndMaxHeight",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/max-inline-size"
+  },
+  "max-lines": {
+    "syntax": "none | <integer>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "integer",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "none",
+    "appliesto": "blockContainersExceptMultiColumnContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "experimental"
+  },
+  "max-width": {
+    "syntax": "none | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "none",
+    "appliesto": "allElementsButNonReplacedAndTableRows",
+    "computed": "percentageAsSpecifiedAbsoluteLengthOrNone",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/max-width"
+  },
+  "min-block-size": {
+    "syntax": "<'min-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "blockSizeOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsWidthAndHeight",
+    "computed": "sameAsMinWidthAndMinHeight",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/min-block-size"
+  },
+  "min-height": {
+    "syntax": "auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "regardingHeightOfGeneratedBoxContainingBlockPercentages0",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsButNonReplacedAndTableColumns",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/min-height"
+  },
+  "min-inline-size": {
+    "syntax": "<'min-width'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "inlineSizeOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "sameAsWidthAndHeight",
+    "computed": "sameAsMinWidthAndMinHeight",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/min-inline-size"
+  },
+  "min-width": {
+    "syntax": "auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsButNonReplacedAndTableRows",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/min-width"
+  },
+  "mix-blend-mode": {
+    "syntax": "<blend-mode>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Compositing and Blending"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/mix-blend-mode"
+  },
+  "object-fit": {
+    "syntax": "fill | contain | cover | none | scale-down",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Images"
+    ],
+    "initial": "fill",
+    "appliesto": "replacedElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/object-fit"
+  },
+  "object-position": {
+    "syntax": "<position>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "repeatableListOfSimpleListOfLpc",
+    "percentages": "referToWidthAndHeightOfElement",
+    "groups": [
+      "CSS Images"
+    ],
+    "initial": "50% 50%",
+    "appliesto": "replacedElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/object-position"
+  },
+  "offset": {
+    "syntax": "[ <'offset-position'>? [ <'offset-path'> [ <'offset-distance'> || <'offset-rotate'> ]? ]? ]! [ / <'offset-anchor'> ]?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "offset-position",
+      "offset-path",
+      "offset-distance",
+      "offset-anchor",
+      "offset-rotate"
+    ],
+    "percentages": [
+      "offset-position",
+      "offset-distance",
+      "offset-anchor"
+    ],
+    "groups": [
+      "CSS Motion Path"
+    ],
+    "initial": [
+      "offset-position",
+      "offset-path",
+      "offset-distance",
+      "offset-anchor",
+      "offset-rotate"
+    ],
+    "appliesto": "transformableElements",
+    "computed": [
+      "offset-position",
+      "offset-path",
+      "offset-distance",
+      "offset-anchor",
+      "offset-rotate"
+    ],
+    "order": "perGrammar",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/offset"
+  },
+  "offset-anchor": {
+    "syntax": "auto | <position>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "position",
+    "percentages": "relativeToWidthAndHeight",
+    "groups": [
+      "CSS Motion Path"
+    ],
+    "initial": "auto",
+    "appliesto": "transformableElements",
+    "computed": "forLengthAbsoluteValueOtherwisePercentage",
+    "order": "perGrammar",
+    "status": "standard"
+  },
+  "offset-distance": {
+    "syntax": "<length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToTotalPathLength",
+    "groups": [
+      "CSS Motion Path"
+    ],
+    "initial": "0",
+    "appliesto": "transformableElements",
+    "computed": "forLengthAbsoluteValueOtherwisePercentage",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/offset-distance"
+  },
+  "offset-path": {
+    "syntax": "none | ray( [ <angle> && <size> && contain? ] ) | <path()> | <url> | [ <basic-shape> || <geometry-box> ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "angleOrBasicShapeOrPath",
+    "percentages": "no",
+    "groups": [
+      "CSS Motion Path"
+    ],
+    "initial": "none",
+    "appliesto": "transformableElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/offset-path"
+  },
+  "offset-position": {
+    "syntax": "auto | <position>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "position",
+    "percentages": "referToSizeOfContainingBlock",
+    "groups": [
+      "CSS Motion Path"
+    ],
+    "initial": "auto",
+    "appliesto": "transformableElements",
+    "computed": "forLengthAbsoluteValueOtherwisePercentage",
+    "order": "perGrammar",
+    "status": "experimental"
+  },
+  "offset-rotate": {
+    "syntax": "[ auto | reverse ] || <angle>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "angleOrBasicShapeOrPath",
+    "percentages": "no",
+    "groups": [
+      "CSS Motion Path"
+    ],
+    "initial": "auto",
+    "appliesto": "transformableElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/offset-rotate"
+  },
+  "opacity": {
+    "syntax": "<alpha-value>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "number",
+    "percentages": "no",
+    "groups": [
+      "CSS Color"
+    ],
+    "initial": "1.0",
+    "appliesto": "allElements",
+    "computed": "specifiedValueClipped0To1",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/opacity"
+  },
+  "order": {
+    "syntax": "<integer>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "integer",
+    "percentages": "no",
+    "groups": [
+      "CSS Flexible Box Layout"
+    ],
+    "initial": "0",
+    "appliesto": "flexItemsGridItemsAbsolutelyPositionedContainerChildren",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/order"
+  },
+  "orphans": {
+    "syntax": "<integer>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fragmentation"
+    ],
+    "initial": "2",
+    "appliesto": "blockContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/orphans"
+  },
+  "outline": {
+    "syntax": "[ <'outline-color'> || <'outline-style'> || <'outline-width'> ]",
+    "media": [
+      "visual",
+      "interactive"
+    ],
+    "inherited": false,
+    "animationType": [
+      "outline-color",
+      "outline-width",
+      "outline-style"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": [
+      "outline-color",
+      "outline-style",
+      "outline-width"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "outline-color",
+      "outline-width",
+      "outline-style"
+    ],
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/outline"
+  },
+  "outline-color": {
+    "syntax": "<color> | invert",
+    "media": [
+      "visual",
+      "interactive"
+    ],
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "invertOrCurrentColor",
+    "appliesto": "allElements",
+    "computed": "invertForTranslucentColorRGBAOtherwiseRGB",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/outline-color"
+  },
+  "outline-offset": {
+    "syntax": "<length>",
+    "media": [
+      "visual",
+      "interactive"
+    ],
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/outline-offset"
+  },
+  "outline-style": {
+    "syntax": "auto | <'border-style'>",
+    "media": [
+      "visual",
+      "interactive"
+    ],
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/outline-style"
+  },
+  "outline-width": {
+    "syntax": "<line-width>",
+    "media": [
+      "visual",
+      "interactive"
+    ],
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "medium",
+    "appliesto": "allElements",
+    "computed": "absoluteLength0ForNone",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/outline-width"
+  },
+  "overflow": {
+    "syntax": "[ visible | hidden | clip | scroll | auto ]{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "visible",
+    "appliesto": "blockContainersFlexContainersGridContainers",
+    "computed": [
+      "overflow-x",
+      "overflow-y"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overflow"
+  },
+  "overflow-anchor": {
+    "syntax": "auto | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Anchoring"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard"
+  },
+  "overflow-block": {
+    "syntax": "visible | hidden | clip | scroll | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "auto",
+    "appliesto": "blockContainersFlexContainersGridContainers",
+    "computed": "asSpecifiedButVisibleOrClipReplacedToAutoOrHiddenIfOtherValueDifferent",
+    "order": "perGrammar",
+    "status": "standard"
+  },
+  "overflow-clip-box": {
+    "syntax": "padding-box | content-box",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Mozilla Extensions"
+    ],
+    "initial": "padding-box",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Mozilla/CSS/overflow-clip-box"
+  },
+  "overflow-inline": {
+    "syntax": "visible | hidden | clip | scroll | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "auto",
+    "appliesto": "blockContainersFlexContainersGridContainers",
+    "computed": "asSpecifiedButVisibleOrClipReplacedToAutoOrHiddenIfOtherValueDifferent",
+    "order": "perGrammar",
+    "status": "standard"
+  },
+  "overflow-wrap": {
+    "syntax": "normal | break-word | anywhere",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "normal",
+    "appliesto": "nonReplacedInlineElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overflow-wrap"
+  },
+  "overflow-x": {
+    "syntax": "visible | hidden | clip | scroll | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "visible",
+    "appliesto": "blockContainersFlexContainersGridContainers",
+    "computed": "asSpecifiedButVisibleOrClipReplacedToAutoOrHiddenIfOtherValueDifferent",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overflow-x"
+  },
+  "overflow-y": {
+    "syntax": "visible | hidden | clip | scroll | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "visible",
+    "appliesto": "blockContainersFlexContainersGridContainers",
+    "computed": "asSpecifiedButVisibleOrClipReplacedToAutoOrHiddenIfOtherValueDifferent",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overflow-y"
+  },
+  "overscroll-behavior": {
+    "syntax": "[ contain | none | auto ]{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior"
+  },
+  "overscroll-behavior-block": {
+    "syntax": "contain | none | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-block"
+  },
+  "overscroll-behavior-inline": {
+    "syntax": "contain | none | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-inline"
+  },
+  "overscroll-behavior-x": {
+    "syntax": "contain | none | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-x"
+  },
+  "overscroll-behavior-y": {
+    "syntax": "contain | none | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "nonReplacedBlockAndInlineBlockElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-y"
+  },
+  "padding": {
+    "syntax": "[ <length> | <percentage> ]{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": [
+      "padding-bottom",
+      "padding-left",
+      "padding-right",
+      "padding-top"
+    ],
+    "appliesto": "allElementsExceptInternalTableDisplayTypes",
+    "computed": [
+      "padding-bottom",
+      "padding-left",
+      "padding-right",
+      "padding-top"
+    ],
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding"
+  },
+  "padding-block": {
+    "syntax": "<'padding-left'>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-block"
+  },
+  "padding-block-end": {
+    "syntax": "<'padding-left'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-block-end"
+  },
+  "padding-block-start": {
+    "syntax": "<'padding-left'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-block-start"
+  },
+  "padding-bottom": {
+    "syntax": "<length> | <percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptInternalTableDisplayTypes",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-bottom"
+  },
+  "padding-inline": {
+    "syntax": "<'padding-left'>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-inline"
+  },
+  "padding-inline-end": {
+    "syntax": "<'padding-left'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-inline-end"
+  },
+  "padding-inline-start": {
+    "syntax": "<'padding-left'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "logicalWidthOfContainingBlock",
+    "groups": [
+      "CSS Logical Properties"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-inline-start"
+  },
+  "padding-left": {
+    "syntax": "<length> | <percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptInternalTableDisplayTypes",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-left"
+  },
+  "padding-right": {
+    "syntax": "<length> | <percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptInternalTableDisplayTypes",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-right"
+  },
+  "padding-top": {
+    "syntax": "<length> | <percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "0",
+    "appliesto": "allElementsExceptInternalTableDisplayTypes",
+    "computed": "percentageAsSpecifiedOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/padding-top"
+  },
+  "page-break-after": {
+    "syntax": "auto | always | avoid | left | right | recto | verso",
+    "media": [
+      "visual",
+      "paged"
+    ],
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Pages"
+    ],
+    "initial": "auto",
+    "appliesto": "blockElementsInNormalFlow",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/page-break-after"
+  },
+  "page-break-before": {
+    "syntax": "auto | always | avoid | left | right | recto | verso",
+    "media": [
+      "visual",
+      "paged"
+    ],
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Pages"
+    ],
+    "initial": "auto",
+    "appliesto": "blockElementsInNormalFlow",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/page-break-before"
+  },
+  "page-break-inside": {
+    "syntax": "auto | avoid",
+    "media": [
+      "visual",
+      "paged"
+    ],
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Pages"
+    ],
+    "initial": "auto",
+    "appliesto": "blockElementsInNormalFlow",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/page-break-inside"
+  },
+  "paint-order": {
+    "syntax": "normal | [ fill || stroke || markers ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "normal",
+    "appliesto": "textElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/paint-order"
+  },
+  "perspective": {
+    "syntax": "none | <length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "none",
+    "appliesto": "transformableElements",
+    "computed": "absoluteLengthOrNone",
+    "order": "uniqueOrder",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/perspective"
+  },
+  "perspective-origin": {
+    "syntax": "<position>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "simpleListOfLpc",
+    "percentages": "referToSizeOfBoundingBox",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "50% 50%",
+    "appliesto": "transformableElements",
+    "computed": "forLengthAbsoluteValueOtherwisePercentage",
+    "order": "oneOrTwoValuesLengthAbsoluteKeywordsPercentages",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/perspective-origin"
+  },
+  "place-content": {
+    "syntax": "<'align-content'> <'justify-content'>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "normal",
+    "appliesto": "multilineFlexContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/place-content"
+  },
+  "place-items": {
+    "syntax": "<'align-items'> <'justify-items'>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": [
+      "align-items",
+      "justify-items"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "align-items",
+      "justify-items"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/place-items"
+  },
+  "place-self": {
+    "syntax": "<'align-self'> <'justify-self'>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": [
+      "align-self",
+      "justify-self"
+    ],
+    "appliesto": "blockLevelBoxesAndAbsolutelyPositionedBoxesAndGridItems",
+    "computed": [
+      "align-self",
+      "justify-self"
+    ],
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/place-self"
+  },
+  "pointer-events": {
+    "syntax": "auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all | inherit",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Pointer Events"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/pointer-events"
+  },
+  "position": {
+    "syntax": "static | relative | absolute | sticky | fixed",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Positioning"
+    ],
+    "initial": "static",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/position"
+  },
+  "quotes": {
+    "syntax": "none | auto | [ <string> <string> ]+",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Generated Content"
+    ],
+    "initial": "dependsOnUserAgent",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/quotes"
+  },
+  "resize": {
+    "syntax": "none | both | horizontal | vertical | block | inline",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "none",
+    "appliesto": "elementsWithOverflowNotVisibleAndReplacedElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/resize"
+  },
+  "right": {
+    "syntax": "<length> | <percentage> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Positioning"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/right"
+  },
+  "rotate": {
+    "syntax": "none | <angle> | [ x | y | z | <number>{3} ] && <angle>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "transform",
+    "percentages": "no",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "none",
+    "appliesto": "transformableElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/rotate"
+  },
+  "row-gap": {
+    "syntax": "normal | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToDimensionOfContentArea",
+    "groups": [
+      "CSS Box Alignment"
+    ],
+    "initial": "normal",
+    "appliesto": "multiColumnElementsFlexContainersGridContainers",
+    "computed": "asSpecifiedWithLengthsAbsoluteAndNormalComputingToZeroExceptMultiColumn",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/row-gap"
+  },
+  "ruby-align": {
+    "syntax": "start | center | space-between | space-around",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Ruby"
+    ],
+    "initial": "space-around",
+    "appliesto": "rubyBasesAnnotationsBaseAnnotationContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/ruby-align"
+  },
+  "ruby-merge": {
+    "syntax": "separate | collapse | auto",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Ruby"
+    ],
+    "initial": "separate",
+    "appliesto": "rubyAnnotationsContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental"
+  },
+  "ruby-position": {
+    "syntax": "over | under | inter-character",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Ruby"
+    ],
+    "initial": "over",
+    "appliesto": "rubyAnnotationsContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/ruby-position"
+  },
+  "scale": {
+    "syntax": "none | <number>{1,3}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "transform",
+    "percentages": "no",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "none",
+    "appliesto": "transformableElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scale"
+  },
+  "scrollbar-color": {
+    "syntax": "auto | dark | light | <color>{2}",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Scrollbars"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollingBoxes",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scrollbar-color"
+  },
+  "scrollbar-gutter": {
+    "syntax": "auto | [ stable | always ] && both? && force?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Overflow"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scrollbar-gutter"
+  },
+  "scrollbar-width": {
+    "syntax": "auto | thin | none",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Scrollbars"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollingBoxes",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scrollbar-width"
+  },
+  "scroll-behavior": {
+    "syntax": "auto | smooth",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSSOM View"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollingBoxes",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-behavior"
+  },
+  "scroll-margin": {
+    "syntax": "<length>{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin"
+  },
+  "scroll-margin-block": {
+    "syntax": "<length>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block"
+  },
+  "scroll-margin-block-start": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-start"
+  },
+  "scroll-margin-block-end": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-end"
+  },
+  "scroll-margin-bottom": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-bottom"
+  },
+  "scroll-margin-inline": {
+    "syntax": "<length>{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline"
+  },
+  "scroll-margin-inline-start": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-start"
+  },
+  "scroll-margin-inline-end": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-end"
+  },
+  "scroll-margin-left": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-left"
+  },
+  "scroll-margin-right": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-right"
+  },
+  "scroll-margin-top": {
+    "syntax": "<length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-margin-top"
+  },
+  "scroll-padding": {
+    "syntax": "[ auto | <length-percentage> ]{1,4}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding"
+  },
+  "scroll-padding-block": {
+    "syntax": "[ auto | <length-percentage> ]{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block"
+  },
+  "scroll-padding-block-start": {
+    "syntax": "auto | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-start"
+  },
+  "scroll-padding-block-end": {
+    "syntax": "auto | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-end"
+  },
+  "scroll-padding-bottom": {
+    "syntax": "auto | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-bottom"
+  },
+  "scroll-padding-inline": {
+    "syntax": "[ auto | <length-percentage> ]{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline"
+  },
+  "scroll-padding-inline-start": {
+    "syntax": "auto | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-start"
+  },
+  "scroll-padding-inline-end": {
+    "syntax": "auto | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-end"
+  },
+  "scroll-padding-left": {
+    "syntax": "auto | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-left"
+  },
+  "scroll-padding-right": {
+    "syntax": "auto | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-right"
+  },
+  "scroll-padding-top": {
+    "syntax": "auto | <length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "relativeToTheScrollContainersScrollport",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "auto",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-padding-top"
+  },
+  "scroll-snap-align": {
+    "syntax": "[ none | start | end | center ]{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-align"
+  },
+  "scroll-snap-coordinate": {
+    "syntax": "none | <position>#",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "position",
+    "percentages": "referToBorderBox",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-coordinate"
+  },
+  "scroll-snap-destination": {
+    "syntax": "<position>",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "position",
+    "percentages": "relativeToScrollContainerPaddingBoxAxis",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "0px 0px",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-destination"
+  },
+  "scroll-snap-points-x": {
+    "syntax": "none | repeat( <length-percentage> )",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "relativeToScrollContainerPaddingBoxAxis",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "none",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-points-x"
+  },
+  "scroll-snap-points-y": {
+    "syntax": "none | repeat( <length-percentage> )",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "relativeToScrollContainerPaddingBoxAxis",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "none",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-points-y"
+  },
+  "scroll-snap-stop": {
+    "syntax": "normal | always",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-stop"
+  },
+  "scroll-snap-type": {
+    "syntax": "none | [ x | y | block | inline | both ] [ mandatory | proximity ]?",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type"
+  },
+  "scroll-snap-type-x": {
+    "syntax": "none | mandatory | proximity",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "none",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type-x"
+  },
+  "scroll-snap-type-y": {
+    "syntax": "none | mandatory | proximity",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Scroll Snap"
+    ],
+    "initial": "none",
+    "appliesto": "scrollContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "obsolete",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type-y"
+  },
+  "shape-image-threshold": {
+    "syntax": "<alpha-value>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "number",
+    "percentages": "no",
+    "groups": [
+      "CSS Shapes"
+    ],
+    "initial": "0.0",
+    "appliesto": "floats",
+    "computed": "specifiedValueNumberClipped0To1",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/shape-image-threshold"
+  },
+  "shape-margin": {
+    "syntax": "<length-percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Shapes"
+    ],
+    "initial": "0",
+    "appliesto": "floats",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/shape-margin"
+  },
+  "shape-outside": {
+    "syntax": "none | <shape-box> || <basic-shape> | <image>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "basicShapeOtherwiseNo",
+    "percentages": "no",
+    "groups": [
+      "CSS Shapes"
+    ],
+    "initial": "none",
+    "appliesto": "floats",
+    "computed": "asDefinedForBasicShapeWithAbsoluteURIOtherwiseAsSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/shape-outside"
+  },
+  "tab-size": {
+    "syntax": "<integer> | <length>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "length",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "8",
+    "appliesto": "blockContainers",
+    "computed": "specifiedIntegerOrAbsoluteLength",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/tab-size"
+  },
+  "table-layout": {
+    "syntax": "auto | fixed",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Table"
+    ],
+    "initial": "auto",
+    "appliesto": "tableElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/table-layout"
+  },
+  "text-align": {
+    "syntax": "start | end | left | right | center | justify | match-parent",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "startOrNamelessValueIfLTRRightIfRTL",
+    "appliesto": "blockContainers",
+    "computed": "asSpecifiedExceptMatchParent",
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-align"
+  },
+  "text-align-last": {
+    "syntax": "auto | start | end | left | right | center | justify",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "auto",
+    "appliesto": "blockContainers",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-align-last"
+  },
+  "text-combine-upright": {
+    "syntax": "none | all | [ digits <integer>? ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "notAnimatable",
+    "percentages": "no",
+    "groups": [
+      "CSS Writing Modes"
+    ],
+    "initial": "none",
+    "appliesto": "nonReplacedInlineElements",
+    "computed": "keywordPlusIntegerIfDigits",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-combine-upright"
+  },
+  "text-decoration": {
+    "syntax": "<'text-decoration-line'> || <'text-decoration-style'> || <'text-decoration-color'> || <'text-decoration-thickness'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "text-decoration-color",
+      "text-decoration-style",
+      "text-decoration-line",
+      "text-decoration-thickness"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": [
+      "text-decoration-color",
+      "text-decoration-style",
+      "text-decoration-line"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "text-decoration-line",
+      "text-decoration-style",
+      "text-decoration-color",
+      "text-decoration-thickness"
+    ],
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-decoration"
+  },
+  "text-decoration-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-decoration-color"
+  },
+  "text-decoration-line": {
+    "syntax": "none | [ underline || overline || line-through || blink ] | spelling-error | grammar-error",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-decoration-line"
+  },
+  "text-decoration-skip": {
+    "syntax": "none | [ objects || [ spaces | [ leading-spaces || trailing-spaces ] ] || edges || box-decoration ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "objects",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip"
+  },
+  "text-decoration-skip-ink": {
+    "syntax": "auto | all | none",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip-ink"
+  },
+  "text-decoration-style": {
+    "syntax": "solid | double | dotted | dashed | wavy",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "solid",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-decoration-style"
+  },
+  "text-decoration-thickness": {
+    "syntax": "auto | from-font | <length> | <percentage> ",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "byComputedValueType",
+    "percentages": "referToElementFontSize",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-decoration-thickness"
+  },
+  "text-emphasis": {
+    "syntax": "<'text-emphasis-style'> || <'text-emphasis-color'>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": [
+      "text-emphasis-color",
+      "text-emphasis-style"
+    ],
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": [
+      "text-emphasis-style",
+      "text-emphasis-color"
+    ],
+    "appliesto": "allElements",
+    "computed": [
+      "text-emphasis-style",
+      "text-emphasis-color"
+    ],
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-emphasis"
+  },
+  "text-emphasis-color": {
+    "syntax": "<color>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "color",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "currentcolor",
+    "appliesto": "allElements",
+    "computed": "computedColor",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-emphasis-color"
+  },
+  "text-emphasis-position": {
+    "syntax": "[ over | under ] && [ right | left ]",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "over right",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-emphasis-position"
+  },
+  "text-emphasis-style": {
+    "syntax": "none | [ [ filled | open ] || [ dot | circle | double-circle | triangle | sesame ] ] | <string>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-emphasis-style"
+  },
+  "text-indent": {
+    "syntax": "<length-percentage> && hanging? && each-line?",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "lpc",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "0",
+    "appliesto": "blockContainers",
+    "computed": "percentageOrAbsoluteLengthPlusKeywords",
+    "order": "lengthOrPercentageBeforeKeywords",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-indent"
+  },
+  "text-justify": {
+    "syntax": "auto | inter-character | inter-word | none",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "auto",
+    "appliesto": "inlineLevelAndTableCellElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-justify"
+  },
+  "text-orientation": {
+    "syntax": "mixed | upright | sideways",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Writing Modes"
+    ],
+    "initial": "mixed",
+    "appliesto": "allElementsExceptTableRowGroupsRowsColumnGroupsAndColumns",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-orientation"
+  },
+  "text-overflow": {
+    "syntax": "[ clip | ellipsis | <string> ]{1,2}",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "clip",
+    "appliesto": "blockContainerElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-overflow"
+  },
+  "text-rendering": {
+    "syntax": "auto | optimizeSpeed | optimizeLegibility | geometricPrecision",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Miscellaneous"
+    ],
+    "initial": "auto",
+    "appliesto": "textElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-rendering"
+  },
+  "text-shadow": {
+    "syntax": "none | <shadow-t>#",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "shadowList",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "colorPlusThreeAbsoluteLengths",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-shadow"
+  },
+  "text-size-adjust": {
+    "syntax": "none | auto | <percentage>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "referToSizeOfFont",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "autoForSmartphoneBrowsersSupportingInflation",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "experimental",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-size-adjust"
+  },
+  "text-transform": {
+    "syntax": "none | capitalize | uppercase | lowercase | full-width | full-size-kana",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "none",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-transform"
+  },
+  "text-underline-offset": {
+    "syntax": "auto | <length> | <percentage> ",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "byComputedValueType",
+    "percentages": "referToElementFontSize",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-underline-offset"
+  },
+  "text-underline-position": {
+    "syntax": "auto | from-font | [ under || [ left | right ] ]",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text Decoration"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/text-underline-position"
+  },
+  "top": {
+    "syntax": "<length> | <percentage> | auto",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToContainingBlockHeight",
+    "groups": [
+      "CSS Positioning"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/top"
+  },
+  "touch-action": {
+    "syntax": "auto | none | [ [ pan-x | pan-left | pan-right ] || [ pan-y | pan-up | pan-down ] || pinch-zoom ] | manipulation",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "Pointer Events"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsExceptNonReplacedInlineElementsTableRowsColumnsRowColumnGroups",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/touch-action"
+  },
+  "transform": {
+    "syntax": "none | <transform-list>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "transform",
+    "percentages": "referToSizeOfBoundingBox",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "none",
+    "appliesto": "transformableElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "uniqueOrder",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transform"
+  },
+  "transform-box": {
+    "syntax": "content-box | border-box | fill-box | stroke-box | view-box",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "view-box",
+    "appliesto": "transformableElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transform-box"
+  },
+  "transform-origin": {
+    "syntax": "[ <length-percentage> | left | center | right | top | bottom ] | [ [ <length-percentage> | left | center | right ] && [ <length-percentage> | top | center | bottom ] ] <length>?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "simpleListOfLpc",
+    "percentages": "referToSizeOfBoundingBox",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "50% 50% 0",
+    "appliesto": "transformableElements",
+    "computed": "forLengthAbsoluteValueOtherwisePercentage",
+    "order": "oneOrTwoValuesLengthAbsoluteKeywordsPercentages",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transform-origin"
+  },
+  "transform-style": {
+    "syntax": "flat | preserve-3d",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "flat",
+    "appliesto": "transformableElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transform-style"
+  },
+  "transition": {
+    "syntax": "<single-transition>#",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Transitions"
+    ],
+    "initial": [
+      "transition-delay",
+      "transition-duration",
+      "transition-property",
+      "transition-timing-function"
+    ],
+    "appliesto": "allElementsAndPseudos",
+    "computed": [
+      "transition-delay",
+      "transition-duration",
+      "transition-property",
+      "transition-timing-function"
+    ],
+    "order": "orderOfAppearance",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transition"
+  },
+  "transition-delay": {
+    "syntax": "<time>#",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Transitions"
+    ],
+    "initial": "0s",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transition-delay"
+  },
+  "transition-duration": {
+    "syntax": "<time>#",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Transitions"
+    ],
+    "initial": "0s",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transition-duration"
+  },
+  "transition-property": {
+    "syntax": "none | <single-transition-property>#",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Transitions"
+    ],
+    "initial": "all",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transition-property"
+  },
+  "transition-timing-function": {
+    "syntax": "<timing-function>#",
+    "media": "interactive",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Transitions"
+    ],
+    "initial": "ease",
+    "appliesto": "allElementsAndPseudos",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/transition-timing-function"
+  },
+  "translate": {
+    "syntax": "none | <length-percentage> [ <length-percentage> <length>? ]?",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "transform",
+    "percentages": "referToSizeOfBoundingBox",
+    "groups": [
+      "CSS Transforms"
+    ],
+    "initial": "none",
+    "appliesto": "transformableElements",
+    "computed": "asSpecifiedRelativeToAbsoluteLengths",
+    "order": "perGrammar",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/translate"
+  },
+  "unicode-bidi": {
+    "syntax": "normal | embed | isolate | bidi-override | isolate-override | plaintext",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Writing Modes"
+    ],
+    "initial": "normal",
+    "appliesto": "allElementsSomeValuesNoEffectOnNonInlineElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/unicode-bidi"
+  },
+  "user-select": {
+    "syntax": "auto | text | none | contain | all",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Basic User Interface"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/user-select"
+  },
+  "vertical-align": {
+    "syntax": "baseline | sub | super | text-top | text-bottom | middle | top | bottom | <percentage> | <length>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "length",
+    "percentages": "referToLineHeight",
+    "groups": [
+      "CSS Table"
+    ],
+    "initial": "baseline",
+    "appliesto": "inlineLevelAndTableCellElements",
+    "computed": "absoluteLengthOrKeyword",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/vertical-align"
+  },
+  "visibility": {
+    "syntax": "visible | hidden | collapse",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "visibility",
+    "percentages": "no",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "visible",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/visibility"
+  },
+  "white-space": {
+    "syntax": "normal | pre | nowrap | pre-wrap | pre-line | break-spaces",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/white-space"
+  },
+  "widows": {
+    "syntax": "<integer>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Fragmentation"
+    ],
+    "initial": "2",
+    "appliesto": "blockContainerElements",
+    "computed": "asSpecified",
+    "order": "perGrammar",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/widows"
+  },
+  "width": {
+    "syntax": "auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "lpc",
+    "percentages": "referToWidthOfContainingBlock",
+    "groups": [
+      "CSS Box Model"
+    ],
+    "initial": "auto",
+    "appliesto": "allElementsButNonReplacedAndTableRows",
+    "computed": "percentageAutoOrAbsoluteLength",
+    "order": "lengthOrPercentageBeforeKeywordIfBothPresent",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/width"
+  },
+  "will-change": {
+    "syntax": "auto | <animateable-feature>#",
+    "media": "all",
+    "inherited": false,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Will Change"
+    ],
+    "initial": "auto",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/will-change"
+  },
+  "word-break": {
+    "syntax": "normal | break-all | keep-all | break-word",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/word-break"
+  },
+  "word-spacing": {
+    "syntax": "normal | <length-percentage>",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "length",
+    "percentages": "referToWidthOfAffectedGlyph",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "optimumMinAndMaxValueOfAbsoluteLengthPercentageOrNormal",
+    "order": "uniqueOrder",
+    "alsoAppliesTo": [
+      "::first-letter",
+      "::first-line",
+      "::placeholder"
+    ],
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/word-spacing"
+  },
+  "word-wrap": {
+    "syntax": "normal | break-word",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Text"
+    ],
+    "initial": "normal",
+    "appliesto": "nonReplacedInlineElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/overflow-wrap"
+  },
+  "writing-mode": {
+    "syntax": "horizontal-tb | vertical-rl | vertical-lr | sideways-rl | sideways-lr",
+    "media": "visual",
+    "inherited": true,
+    "animationType": "discrete",
+    "percentages": "no",
+    "groups": [
+      "CSS Writing Modes"
+    ],
+    "initial": "horizontal-tb",
+    "appliesto": "allElementsExceptTableRowColumnGroupsTableRowsColumns",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/writing-mode"
+  },
+  "z-index": {
+    "syntax": "auto | <integer>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "integer",
+    "percentages": "no",
+    "groups": [
+      "CSS Positioning"
+    ],
+    "initial": "auto",
+    "appliesto": "positionedElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "stacking": true,
+    "status": "standard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/z-index"
+  },
+  "zoom": {
+    "syntax": "normal | reset | <number> | <percentage>",
+    "media": "visual",
+    "inherited": false,
+    "animationType": "integer",
+    "percentages": "no",
+    "groups": [
+      "Microsoft Extensions"
+    ],
+    "initial": "normal",
+    "appliesto": "allElements",
+    "computed": "asSpecified",
+    "order": "uniqueOrder",
+    "status": "nonstandard",
+    "mdn_url": "https://developer.mozilla.org/docs/Web/CSS/zoom"
+  }
+}

+ 761 - 0
android/app/src/main/res/raw/node_modules_mdndata_css_syntaxes.json

@@ -0,0 +1,761 @@
+{
+  "absolute-size": {
+    "syntax": "xx-small | x-small | small | medium | large | x-large | xx-large | xxx-large"
+  },
+  "alpha-value": {
+    "syntax": "<number> | <percentage>"
+  },
+  "angle-percentage": {
+    "syntax": "<angle> | <percentage>"
+  },
+  "angular-color-hint": {
+    "syntax": "<angle-percentage>"
+  },
+  "angular-color-stop": {
+    "syntax": "<color> && <color-stop-angle>?"
+  },
+  "angular-color-stop-list": {
+    "syntax": "[ <angular-color-stop> [, <angular-color-hint>]? ]# , <angular-color-stop>"
+  },
+  "animateable-feature": {
+    "syntax": "scroll-position | contents | <custom-ident>"
+  },
+  "attachment": {
+    "syntax": "scroll | fixed | local"
+  },
+  "attr()": {
+    "syntax": "attr( <attr-name> <type-or-unit>? [, <attr-fallback> ]? )"
+  },
+  "attr-matcher": {
+    "syntax": "[ '~' | '|' | '^' | '$' | '*' ]? '='"
+  },
+  "attr-modifier": {
+    "syntax": "i | s"
+  },
+  "attribute-selector": {
+    "syntax": "'[' <wq-name> ']' | '[' <wq-name> <attr-matcher> [ <string-token> | <ident-token> ] <attr-modifier>? ']'"
+  },
+  "auto-repeat": {
+    "syntax": "repeat( [ auto-fill | auto-fit ] , [ <line-names>? <fixed-size> ]+ <line-names>? )"
+  },
+  "auto-track-list": {
+    "syntax": "[ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>? <auto-repeat>\n[ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>?"
+  },
+  "baseline-position": {
+    "syntax": "[ first | last ]? baseline"
+  },
+  "basic-shape": {
+    "syntax": "<inset()> | <circle()> | <ellipse()> | <polygon()> | <path()>"
+  },
+  "bg-image": {
+    "syntax": "none | <image>"
+  },
+  "bg-layer": {
+    "syntax": "<bg-image> || <bg-position> [ / <bg-size> ]? || <repeat-style> || <attachment> || <box> || <box>"
+  },
+  "bg-position": {
+    "syntax": "[ [ left | center | right | top | bottom | <length-percentage> ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ] | [ center | [ left | right ] <length-percentage>? ] && [ center | [ top | bottom ] <length-percentage>? ] ]"
+  },
+  "bg-size": {
+    "syntax": "[ <length-percentage> | auto ]{1,2} | cover | contain"
+  },
+  "blur()": {
+    "syntax": "blur( <length> )"
+  },
+  "blend-mode": {
+    "syntax": "normal | multiply | screen | overlay | darken | lighten | color-dodge | color-burn | hard-light | soft-light | difference | exclusion | hue | saturation | color | luminosity"
+  },
+  "box": {
+    "syntax": "border-box | padding-box | content-box"
+  },
+  "brightness()": {
+    "syntax": "brightness( <number-percentage> )"
+  },
+  "calc()": {
+    "syntax": "calc( <calc-sum> )"
+  },
+  "calc-sum": {
+    "syntax": "<calc-product> [ [ '+' | '-' ] <calc-product> ]*"
+  },
+  "calc-product": {
+    "syntax": "<calc-value> [ '*' <calc-value> | '/' <number> ]*"
+  },
+  "calc-value": {
+    "syntax": "<number> | <dimension> | <percentage> | ( <calc-sum> )"
+  },
+  "cf-final-image": {
+    "syntax": "<image> | <color>"
+  },
+  "cf-mixing-image": {
+    "syntax": "<percentage>? && <image>"
+  },
+  "circle()": {
+    "syntax": "circle( [ <shape-radius> ]? [ at <position> ]? )"
+  },
+  "clamp()": {
+    "syntax": "clamp( <calc-sum>#{3} )"
+  },
+  "class-selector": {
+    "syntax": "'.' <ident-token>"
+  },
+  "clip-source": {
+    "syntax": "<url>"
+  },
+  "color": {
+    "syntax": "<rgb()> | <rgba()> | <hsl()> | <hsla()> | <hex-color> | <named-color> | currentcolor | <deprecated-system-color>"
+  },
+  "color-stop": {
+    "syntax": "<color-stop-length> | <color-stop-angle>"
+  },
+  "color-stop-angle": {
+    "syntax": "<angle-percentage>{1,2}"
+  },
+  "color-stop-length": {
+    "syntax": "<length-percentage>{1,2}"
+  },
+  "color-stop-list": {
+    "syntax": "[ <linear-color-stop> [, <linear-color-hint>]? ]# , <linear-color-stop>"
+  },
+  "combinator": {
+    "syntax": "'>' | '+' | '~' | [ '||' ]"
+  },
+  "common-lig-values": {
+    "syntax": "[ common-ligatures | no-common-ligatures ]"
+  },
+  "compat-auto": {
+    "syntax": "searchfield | textarea | push-button | slider-horizontal | checkbox | radio | square-button | menulist | listbox | meter | progress-bar | button"
+  },
+  "composite-style": {
+    "syntax": "clear | copy | source-over | source-in | source-out | source-atop | destination-over | destination-in | destination-out | destination-atop | xor"
+  },
+  "compositing-operator": {
+    "syntax": "add | subtract | intersect | exclude"
+  },
+  "compound-selector": {
+    "syntax": "[ <type-selector>? <subclass-selector>* [ <pseudo-element-selector> <pseudo-class-selector>* ]* ]!"
+  },
+  "compound-selector-list": {
+    "syntax": "<compound-selector>#"
+  },
+  "complex-selector": {
+    "syntax": "<compound-selector> [ <combinator>? <compound-selector> ]*"
+  },
+  "complex-selector-list": {
+    "syntax": "<complex-selector>#"
+  },
+  "conic-gradient()": {
+    "syntax": "conic-gradient( [ from <angle> ]? [ at <position> ]?, <angular-color-stop-list> )"
+  },
+  "contextual-alt-values": {
+    "syntax": "[ contextual | no-contextual ]"
+  },
+  "content-distribution": {
+    "syntax": "space-between | space-around | space-evenly | stretch"
+  },
+  "content-list": {
+    "syntax": "[ <string> | contents | <image> | <quote> | <target> | <leader()> ]+"
+  },
+  "content-position": {
+    "syntax": "center | start | end | flex-start | flex-end"
+  },
+  "content-replacement": {
+    "syntax": "<image>"
+  },
+  "contrast()": {
+    "syntax": "contrast( [ <number-percentage> ] )"
+  },
+  "counter()": {
+    "syntax": "counter( <custom-ident>, <counter-style>? )"
+  },
+  "counter-style": {
+    "syntax": "<counter-style-name> | symbols()"
+  },
+  "counter-style-name": {
+    "syntax": "<custom-ident>"
+  },
+  "counters()": {
+    "syntax": "counters( <custom-ident>, <string>, <counter-style>? )"
+  },
+  "cross-fade()": {
+    "syntax": "cross-fade( <cf-mixing-image> , <cf-final-image>? )"
+  },
+  "cubic-bezier-timing-function": {
+    "syntax": "ease | ease-in | ease-out | ease-in-out | cubic-bezier(<number [0,1]>, <number>, <number [0,1]>, <number>)"
+  },
+  "deprecated-system-color": {
+    "syntax": "ActiveBorder | ActiveCaption | AppWorkspace | Background | ButtonFace | ButtonHighlight | ButtonShadow | ButtonText | CaptionText | GrayText | Highlight | HighlightText | InactiveBorder | InactiveCaption | InactiveCaptionText | InfoBackground | InfoText | Menu | MenuText | Scrollbar | ThreeDDarkShadow | ThreeDFace | ThreeDHighlight | ThreeDLightShadow | ThreeDShadow | Window | WindowFrame | WindowText"
+  },
+  "discretionary-lig-values": {
+    "syntax": "[ discretionary-ligatures | no-discretionary-ligatures ]"
+  },
+  "display-box": {
+    "syntax": "contents | none"
+  },
+  "display-inside": {
+    "syntax": "flow | flow-root | table | flex | grid | ruby"
+  },
+  "display-internal": {
+    "syntax": "table-row-group | table-header-group | table-footer-group | table-row | table-cell | table-column-group | table-column | table-caption | ruby-base | ruby-text | ruby-base-container | ruby-text-container"
+  },
+  "display-legacy": {
+    "syntax": "inline-block | inline-list-item | inline-table | inline-flex | inline-grid"
+  },
+  "display-listitem": {
+    "syntax": "<display-outside>? && [ flow | flow-root ]? && list-item"
+  },
+  "display-outside": {
+    "syntax": "block | inline | run-in"
+  },
+  "drop-shadow()": {
+    "syntax": "drop-shadow( <length>{2,3} <color>? )"
+  },
+  "east-asian-variant-values": {
+    "syntax": "[ jis78 | jis83 | jis90 | jis04 | simplified | traditional ]"
+  },
+  "east-asian-width-values": {
+    "syntax": "[ full-width | proportional-width ]"
+  },
+  "element()": {
+    "syntax": "element( <id-selector> )"
+  },
+  "ellipse()": {
+    "syntax": "ellipse( [ <shape-radius>{2} ]? [ at <position> ]? )"
+  },
+  "ending-shape": {
+    "syntax": "circle | ellipse"
+  },
+  "env()": {
+    "syntax": "env( <custom-ident> , <declaration-value>? )"
+  },
+  "explicit-track-list": {
+    "syntax": "[ <line-names>? <track-size> ]+ <line-names>?"
+  },
+  "family-name": {
+    "syntax": "<string> | <custom-ident>+"
+  },
+  "feature-tag-value": {
+    "syntax": "<string> [ <integer> | on | off ]?"
+  },
+  "feature-type": {
+    "syntax": "@stylistic | @historical-forms | @styleset | @character-variant | @swash | @ornaments | @annotation"
+  },
+  "feature-value-block": {
+    "syntax": "<feature-type> '{' <feature-value-declaration-list> '}'"
+  },
+  "feature-value-block-list": {
+    "syntax": "<feature-value-block>+"
+  },
+  "feature-value-declaration": {
+    "syntax": "<custom-ident>: <integer>+;"
+  },
+  "feature-value-declaration-list": {
+    "syntax": "<feature-value-declaration>"
+  },
+  "feature-value-name": {
+    "syntax": "<custom-ident>"
+  },
+  "fill-rule": {
+    "syntax": "nonzero | evenodd"
+  },
+  "filter-function": {
+    "syntax": "<blur()> | <brightness()> | <contrast()> | <drop-shadow()> | <grayscale()> | <hue-rotate()> | <invert()> | <opacity()> | <saturate()> | <sepia()>"
+  },
+  "filter-function-list": {
+    "syntax": "[ <filter-function> | <url> ]+"
+  },
+  "final-bg-layer": {
+    "syntax": "<'background-color'> || <bg-image> || <bg-position> [ / <bg-size> ]? || <repeat-style> || <attachment> || <box> || <box>"
+  },
+  "fit-content()": {
+    "syntax": "fit-content( [ <length> | <percentage> ] )"
+  },
+  "fixed-breadth": {
+    "syntax": "<length-percentage>"
+  },
+  "fixed-repeat": {
+    "syntax": "repeat( [ <positive-integer> ] , [ <line-names>? <fixed-size> ]+ <line-names>? )"
+  },
+  "fixed-size": {
+    "syntax": "<fixed-breadth> | minmax( <fixed-breadth> , <track-breadth> ) | minmax( <inflexible-breadth> , <fixed-breadth> )"
+  },
+  "font-stretch-absolute": {
+    "syntax": "normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | <percentage>"
+  },
+  "font-variant-css21": {
+    "syntax": "[ normal | small-caps ]"
+  },
+  "font-weight-absolute": {
+    "syntax": "normal | bold | <number [1,1000]>"
+  },
+  "frequency-percentage": {
+    "syntax": "<frequency> | <percentage>"
+  },
+  "general-enclosed": {
+    "syntax": "[ <function-token> <any-value> ) ] | ( <ident> <any-value> )"
+  },
+  "generic-family": {
+    "syntax": "serif | sans-serif | cursive | fantasy | monospace"
+  },
+  "generic-name": {
+    "syntax": "serif | sans-serif | cursive | fantasy | monospace"
+  },
+  "geometry-box": {
+    "syntax": "<shape-box> | fill-box | stroke-box | view-box"
+  },
+  "gradient": {
+    "syntax": "<linear-gradient()> | <repeating-linear-gradient()> | <radial-gradient()> | <repeating-radial-gradient()> | <conic-gradient()>"
+  },
+  "grayscale()": {
+    "syntax": "grayscale( <number-percentage> )"
+  },
+  "grid-line": {
+    "syntax": "auto | <custom-ident> | [ <integer> && <custom-ident>? ] | [ span && [ <integer> || <custom-ident> ] ]"
+  },
+  "historical-lig-values": {
+    "syntax": "[ historical-ligatures | no-historical-ligatures ]"
+  },
+  "hsl()": {
+    "syntax": "hsl( <hue> <percentage> <percentage> [ / <alpha-value> ]? ) | hsl( <hue>, <percentage>, <percentage>, <alpha-value>? )"
+  },
+  "hsla()": {
+    "syntax": "hsla( <hue> <percentage> <percentage> [ / <alpha-value> ]? ) | hsla( <hue>, <percentage>, <percentage>, <alpha-value>? )"
+  },
+  "hue": {
+    "syntax": "<number> | <angle>"
+  },
+  "hue-rotate()": {
+    "syntax": "hue-rotate( <angle> )"
+  },
+  "id-selector": {
+    "syntax": "<hash-token>"
+  },
+  "image": {
+    "syntax": "<url> | <image()> | <image-set()> | <element()> | <paint()> | <cross-fade()> | <gradient>"
+  },
+  "image()": {
+    "syntax": "image( <image-tags>? [ <image-src>? , <color>? ]! )"
+  },
+  "image-set()": {
+    "syntax": "image-set( <image-set-option># )"
+  },
+  "image-set-option": {
+    "syntax": "[ <image> | <string> ] <resolution>"
+  },
+  "image-src": {
+    "syntax": "<url> | <string>"
+  },
+  "image-tags": {
+    "syntax": "ltr | rtl"
+  },
+  "inflexible-breadth": {
+    "syntax": "<length> | <percentage> | min-content | max-content | auto"
+  },
+  "inset()": {
+    "syntax": "inset( <length-percentage>{1,4} [ round <'border-radius'> ]? )"
+  },
+  "invert()": {
+    "syntax": "invert( <number-percentage> )"
+  },
+  "keyframes-name": {
+    "syntax": "<custom-ident> | <string>"
+  },
+  "keyframe-block": {
+    "syntax": "<keyframe-selector># {\n  <declaration-list>\n}"
+  },
+  "keyframe-block-list": {
+    "syntax": "<keyframe-block>+"
+  },
+  "keyframe-selector": {
+    "syntax": "from | to | <percentage>"
+  },
+  "leader()": {
+    "syntax": "leader( <leader-type> )"
+  },
+  "leader-type": {
+    "syntax": "dotted | solid | space | <string>"
+  },
+  "length-percentage": {
+    "syntax": "<length> | <percentage>"
+  },
+  "line-names": {
+    "syntax": "'[' <custom-ident>* ']'"
+  },
+  "line-name-list": {
+    "syntax": "[ <line-names> | <name-repeat> ]+"
+  },
+  "line-style": {
+    "syntax": "none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset"
+  },
+  "line-width": {
+    "syntax": "<length> | thin | medium | thick"
+  },
+  "linear-color-hint": {
+    "syntax": "<length-percentage>"
+  },
+  "linear-color-stop": {
+    "syntax": "<color> <color-stop-length>?"
+  },
+  "linear-gradient()": {
+    "syntax": "linear-gradient( [ <angle> | to <side-or-corner> ]? , <color-stop-list> )"
+  },
+  "mask-layer": {
+    "syntax": "<mask-reference> || <position> [ / <bg-size> ]? || <repeat-style> || <geometry-box> || [ <geometry-box> | no-clip ] || <compositing-operator> || <masking-mode>"
+  },
+  "mask-position": {
+    "syntax": "[ <length-percentage> | left | center | right ] [ <length-percentage> | top | center | bottom ]?"
+  },
+  "mask-reference": {
+    "syntax": "none | <image> | <mask-source>"
+  },
+  "mask-source": {
+    "syntax": "<url>"
+  },
+  "masking-mode": {
+    "syntax": "alpha | luminance | match-source"
+  },
+  "matrix()": {
+    "syntax": "matrix( <number>#{6} )"
+  },
+  "matrix3d()": {
+    "syntax": "matrix3d( <number>#{16} )"
+  },
+  "max()": {
+    "syntax": "max( <calc-sum># )"
+  },
+  "media-and": {
+    "syntax": "<media-in-parens> [ and <media-in-parens> ]+"
+  },
+  "media-condition": {
+    "syntax": "<media-not> | <media-and> | <media-or> | <media-in-parens>"
+  },
+  "media-condition-without-or": {
+    "syntax": "<media-not> | <media-and> | <media-in-parens>"
+  },
+  "media-feature": {
+    "syntax": "( [ <mf-plain> | <mf-boolean> | <mf-range> ] )"
+  },
+  "media-in-parens": {
+    "syntax": "( <media-condition> ) | <media-feature> | <general-enclosed>"
+  },
+  "media-not": {
+    "syntax": "not <media-in-parens>"
+  },
+  "media-or": {
+    "syntax": "<media-in-parens> [ or <media-in-parens> ]+"
+  },
+  "media-query": {
+    "syntax": "<media-condition> | [ not | only ]? <media-type> [ and <media-condition-without-or> ]?"
+  },
+  "media-query-list": {
+    "syntax": "<media-query>#"
+  },
+  "media-type": {
+    "syntax": "<ident>"
+  },
+  "mf-boolean": {
+    "syntax": "<mf-name>"
+  },
+  "mf-name": {
+    "syntax": "<ident>"
+  },
+  "mf-plain": {
+    "syntax": "<mf-name> : <mf-value>"
+  },
+  "mf-range": {
+    "syntax": "<mf-name> [ '<' | '>' ]? '='? <mf-value>\n| <mf-value> [ '<' | '>' ]? '='? <mf-name>\n| <mf-value> '<' '='? <mf-name> '<' '='? <mf-value>\n| <mf-value> '>' '='? <mf-name> '>' '='? <mf-value>"
+  },
+  "mf-value": {
+    "syntax": "<number> | <dimension> | <ident> | <ratio>"
+  },
+  "min()": {
+    "syntax": "min( <calc-sum># )"
+  },
+  "minmax()": {
+    "syntax": "minmax( [ <length> | <percentage> | min-content | max-content | auto ] , [ <length> | <percentage> | <flex> | min-content | max-content | auto ] )"
+  },
+  "named-color": {
+    "syntax": "transparent | aliceblue | antiquewhite | aqua | aquamarine | azure | beige | bisque | black | blanchedalmond | blue | blueviolet | brown | burlywood | cadetblue | chartreuse | chocolate | coral | cornflowerblue | cornsilk | crimson | cyan | darkblue | darkcyan | darkgoldenrod | darkgray | darkgreen | darkgrey | darkkhaki | darkmagenta | darkolivegreen | darkorange | darkorchid | darkred | darksalmon | darkseagreen | darkslateblue | darkslategray | darkslategrey | darkturquoise | darkviolet | deeppink | deepskyblue | dimgray | dimgrey | dodgerblue | firebrick | floralwhite | forestgreen | fuchsia | gainsboro | ghostwhite | gold | goldenrod | gray | green | greenyellow | grey | honeydew | hotpink | indianred | indigo | ivory | khaki | lavender | lavenderblush | lawngreen | lemonchiffon | lightblue | lightcoral | lightcyan | lightgoldenrodyellow | lightgray | lightgreen | lightgrey | lightpink | lightsalmon | lightseagreen | lightskyblue | lightslategray | lightslategrey | lightsteelblue | lightyellow | lime | limegreen | linen | magenta | maroon | mediumaquamarine | mediumblue | mediumorchid | mediumpurple | mediumseagreen | mediumslateblue | mediumspringgreen | mediumturquoise | mediumvioletred | midnightblue | mintcream | mistyrose | moccasin | navajowhite | navy | oldlace | olive | olivedrab | orange | orangered | orchid | palegoldenrod | palegreen | paleturquoise | palevioletred | papayawhip | peachpuff | peru | pink | plum | powderblue | purple | rebeccapurple | red | rosybrown | royalblue | saddlebrown | salmon | sandybrown | seagreen | seashell | sienna | silver | skyblue | slateblue | slategray | slategrey | snow | springgreen | steelblue | tan | teal | thistle | tomato | turquoise | violet | wheat | white | whitesmoke | yellow | yellowgreen"
+  },
+  "namespace-prefix": {
+    "syntax": "<ident>"
+  },
+  "ns-prefix": {
+    "syntax": "[ <ident-token> | '*' ]? '|'"
+  },
+  "number-percentage": {
+    "syntax": "<number> | <percentage>"
+  },
+  "numeric-figure-values": {
+    "syntax": "[ lining-nums | oldstyle-nums ]"
+  },
+  "numeric-fraction-values": {
+    "syntax": "[ diagonal-fractions | stacked-fractions ]"
+  },
+  "numeric-spacing-values": {
+    "syntax": "[ proportional-nums | tabular-nums ]"
+  },
+  "nth": {
+    "syntax": "<an-plus-b> | even | odd"
+  },
+  "opacity()": {
+    "syntax": "opacity( [ <number-percentage> ] )"
+  },
+  "overflow-position": {
+    "syntax": "unsafe | safe"
+  },
+  "outline-radius": {
+    "syntax": "<length> | <percentage>"
+  },
+  "page-body": {
+    "syntax": "<declaration>? [ ; <page-body> ]? | <page-margin-box> <page-body>"
+  },
+  "page-margin-box": {
+    "syntax": "<page-margin-box-type> '{' <declaration-list> '}'"
+  },
+  "page-margin-box-type": {
+    "syntax": "@top-left-corner | @top-left | @top-center | @top-right | @top-right-corner | @bottom-left-corner | @bottom-left | @bottom-center | @bottom-right | @bottom-right-corner | @left-top | @left-middle | @left-bottom | @right-top | @right-middle | @right-bottom"
+  },
+  "page-selector-list": {
+    "syntax": "[ <page-selector># ]?"
+  },
+  "page-selector": {
+    "syntax": "<pseudo-page>+ | <ident> <pseudo-page>*"
+  },
+  "path()": {
+    "syntax": "path( [ <fill-rule>, ]? <string> )"
+  },
+  "paint()": {
+    "syntax": "paint( <ident>, <declaration-value>? )"
+  },
+  "perspective()": {
+    "syntax": "perspective( <length> )"
+  },
+  "polygon()": {
+    "syntax": "polygon( <fill-rule>? , [ <length-percentage> <length-percentage> ]# )"
+  },
+  "position": {
+    "syntax": "[ [ left | center | right ] || [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]? | [ [ left | right ] <length-percentage> ] && [ [ top | bottom ] <length-percentage> ] ]"
+  },
+  "pseudo-class-selector": {
+    "syntax": "':' <ident-token> | ':' <function-token> <any-value> ')'"
+  },
+  "pseudo-element-selector": {
+    "syntax": "':' <pseudo-class-selector>"
+  },
+  "pseudo-page": {
+    "syntax": ": [ left | right | first | blank ]"
+  },
+  "quote": {
+    "syntax": "open-quote | close-quote | no-open-quote | no-close-quote"
+  },
+  "radial-gradient()": {
+    "syntax": "radial-gradient( [ <ending-shape> || <size> ]? [ at <position> ]? , <color-stop-list> )"
+  },
+  "relative-selector": {
+    "syntax": "<combinator>? <complex-selector>"
+  },
+  "relative-selector-list": {
+    "syntax": "<relative-selector>#"
+  },
+  "relative-size": {
+    "syntax": "larger | smaller"
+  },
+  "repeat-style": {
+    "syntax": "repeat-x | repeat-y | [ repeat | space | round | no-repeat ]{1,2}"
+  },
+  "repeating-linear-gradient()": {
+    "syntax": "repeating-linear-gradient( [ <angle> | to <side-or-corner> ]? , <color-stop-list> )"
+  },
+  "repeating-radial-gradient()": {
+    "syntax": "repeating-radial-gradient( [ <ending-shape> || <size> ]? [ at <position> ]? , <color-stop-list> )"
+  },
+  "rgb()": {
+    "syntax": "rgb( <percentage>{3} [ / <alpha-value> ]? ) | rgb( <number>{3} [ / <alpha-value> ]? ) | rgb( <percentage>#{3} , <alpha-value>? ) | rgb( <number>#{3} , <alpha-value>? )"
+  },
+  "rgba()": {
+    "syntax": "rgba( <percentage>{3} [ / <alpha-value> ]? ) | rgba( <number>{3} [ / <alpha-value> ]? ) | rgba( <percentage>#{3} , <alpha-value>? ) | rgba( <number>#{3} , <alpha-value>? )"
+  },
+  "rotate()": {
+    "syntax": "rotate( [ <angle> | <zero> ] )"
+  },
+  "rotate3d()": {
+    "syntax": "rotate3d( <number> , <number> , <number> , [ <angle> | <zero> ] )"
+  },
+  "rotateX()": {
+    "syntax": "rotateX( [ <angle> | <zero> ] )"
+  },
+  "rotateY()": {
+    "syntax": "rotateY( [ <angle> | <zero> ] )"
+  },
+  "rotateZ()": {
+    "syntax": "rotateZ( [ <angle> | <zero> ] )"
+  },
+  "saturate()": {
+    "syntax": "saturate( <number-percentage> )"
+  },
+  "scale()": {
+    "syntax": "scale( <number> , <number>? )"
+  },
+  "scale3d()": {
+    "syntax": "scale3d( <number> , <number> , <number> )"
+  },
+  "scaleX()": {
+    "syntax": "scaleX( <number> )"
+  },
+  "scaleY()": {
+    "syntax": "scaleY( <number> )"
+  },
+  "scaleZ()": {
+    "syntax": "scaleZ( <number> )"
+  },
+  "self-position": {
+    "syntax": "center | start | end | self-start | self-end | flex-start | flex-end"
+  },
+  "shape-radius": {
+    "syntax": "<length-percentage> | closest-side | farthest-side"
+  },
+  "skew()": {
+    "syntax": "skew( [ <angle> | <zero> ] , [ <angle> | <zero> ]? )"
+  },
+  "skewX()": {
+    "syntax": "skewX( [ <angle> | <zero> ] )"
+  },
+  "skewY()": {
+    "syntax": "skewY( [ <angle> | <zero> ] )"
+  },
+  "sepia()": {
+    "syntax": "sepia( <number-percentage> )"
+  },
+  "shadow": {
+    "syntax": "inset? && <length>{2,4} && <color>?"
+  },
+  "shadow-t": {
+    "syntax": "[ <length>{2,3} && <color>? ]"
+  },
+  "shape": {
+    "syntax": "rect(<top>, <right>, <bottom>, <left>)"
+  },
+  "shape-box": {
+    "syntax": "<box> | margin-box"
+  },
+  "side-or-corner": {
+    "syntax": "[ left | right ] || [ top | bottom ]"
+  },
+  "single-animation": {
+    "syntax": "<time> || <timing-function> || <time> || <single-animation-iteration-count> || <single-animation-direction> || <single-animation-fill-mode> || <single-animation-play-state> || [ none | <keyframes-name> ]"
+  },
+  "single-animation-direction": {
+    "syntax": "normal | reverse | alternate | alternate-reverse"
+  },
+  "single-animation-fill-mode": {
+    "syntax": "none | forwards | backwards | both"
+  },
+  "single-animation-iteration-count": {
+    "syntax": "infinite | <number>"
+  },
+  "single-animation-play-state": {
+    "syntax": "running | paused"
+  },
+  "single-transition": {
+    "syntax": "[ none | <single-transition-property> ] || <time> || <timing-function> || <time>"
+  },
+  "single-transition-property": {
+    "syntax": "all | <custom-ident>"
+  },
+  "size": {
+    "syntax": "closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}"
+  },
+  "step-position": {
+    "syntax": "jump-start | jump-end | jump-none | jump-both | start | end"
+  },
+  "step-timing-function": {
+    "syntax": "step-start | step-end | steps(<integer>[, <step-position>]?)"
+  },
+  "subclass-selector": {
+    "syntax": "<id-selector> | <class-selector> | <attribute-selector> | <pseudo-class-selector>"
+  },
+  "supports-condition": {
+    "syntax": "not <supports-in-parens> | <supports-in-parens> [ and <supports-in-parens> ]* | <supports-in-parens> [ or <supports-in-parens> ]*"
+  },
+  "supports-in-parens": {
+    "syntax": "( <supports-condition> ) | <supports-feature> | <general-enclosed>"
+  },
+  "supports-feature": {
+    "syntax": "<supports-decl> | <supports-selector-fn>"
+  },
+  "supports-decl": {
+    "syntax": "( <declaration> )"
+  },
+  "supports-selector-fn": {
+    "syntax": "selector( <complex-selector> )"
+  },
+  "symbol": {
+    "syntax": "<string> | <image> | <custom-ident>"
+  },
+  "target": {
+    "syntax": "<target-counter()> | <target-counters()> | <target-text()>"
+  },
+  "target-counter()": {
+    "syntax": "target-counter( [ <string> | <url> ] , <custom-ident> , <counter-style>? )"
+  },
+  "target-counters()": {
+    "syntax": "target-counters( [ <string> | <url> ] , <custom-ident> , <string> , <counter-style>? )"
+  },
+  "target-text()": {
+    "syntax": "target-text( [ <string> | <url> ] , [ content | before | after | first-letter ]? )"
+  },
+  "time-percentage": {
+    "syntax": "<time> | <percentage>"
+  },
+  "timing-function": {
+    "syntax": "linear | <cubic-bezier-timing-function> | <step-timing-function>"
+  },
+  "track-breadth": {
+    "syntax": "<length-percentage> | <flex> | min-content | max-content | auto"
+  },
+  "track-list": {
+    "syntax": "[ <line-names>? [ <track-size> | <track-repeat> ] ]+ <line-names>?"
+  },
+  "track-repeat": {
+    "syntax": "repeat( [ <positive-integer> ] , [ <line-names>? <track-size> ]+ <line-names>? )"
+  },
+  "track-size": {
+    "syntax": "<track-breadth> | minmax( <inflexible-breadth> , <track-breadth> ) | fit-content( [ <length> | <percentage> ] )"
+  },
+  "transform-function": {
+    "syntax": "<matrix()> | <translate()> | <translateX()> | <translateY()> | <scale()> | <scaleX()> | <scaleY()> | <rotate()> | <skew()> | <skewX()> | <skewY()> | <matrix3d()> | <translate3d()> | <translateZ()> | <scale3d()> | <scaleZ()> | <rotate3d()> | <rotateX()> | <rotateY()> | <rotateZ()> | <perspective()>"
+  },
+  "transform-list": {
+    "syntax": "<transform-function>+"
+  },
+  "translate()": {
+    "syntax": "translate( <length-percentage> , <length-percentage>? )"
+  },
+  "translate3d()": {
+    "syntax": "translate3d( <length-percentage> , <length-percentage> , <length> )"
+  },
+  "translateX()": {
+    "syntax": "translateX( <length-percentage> )"
+  },
+  "translateY()": {
+    "syntax": "translateY( <length-percentage> )"
+  },
+  "translateZ()": {
+    "syntax": "translateZ( <length> )"
+  },
+  "type-or-unit": {
+    "syntax": "string | color | url | integer | number | length | angle | time | frequency | cap | ch | em | ex | ic | lh | rlh | rem | vb | vi | vw | vh | vmin | vmax | mm | Q | cm | in | pt | pc | px | deg | grad | rad | turn | ms | s | Hz | kHz | %"
+  },
+  "type-selector": {
+    "syntax": "<wq-name> | <ns-prefix>? '*'"
+  },
+  "var()": {
+    "syntax": "var( <custom-property-name> , <declaration-value>? )"
+  },
+  "viewport-length": {
+    "syntax": "auto | <length-percentage>"
+  },
+  "wq-name": {
+    "syntax": "<ns-prefix>? <ident-token>"
+  }
+}

+ 11 - 0
android/app/src/main/res/raw/node_modules_reactnativesvg_node_modules_cssselect_lib_procedure.json

@@ -0,0 +1,11 @@
+{
+	"universal": 50,
+	"tag": 30,
+	"attribute": 1,
+	"pseudo": 0,
+	"descendant": -1,
+	"child": -1,
+	"parent": -1,
+	"sibling": -1,
+	"adjacent": -1
+}

+ 102 - 0
android/app/src/main/res/raw/node_modules_reactnativesvg_node_modules_domserializer_foreignnames.json

@@ -0,0 +1,102 @@
+{
+  "elementNames" : {
+"altglyph" : "altGlyph",
+"altglyphdef" : "altGlyphDef",
+"altglyphitem" : "altGlyphItem",
+"animatecolor" : "animateColor",
+"animatemotion" : "animateMotion",
+"animatetransform" : "animateTransform",
+"clippath" : "clipPath",
+"feblend" : "feBlend",
+"fecolormatrix" : "feColorMatrix",
+"fecomponenttransfer" : "feComponentTransfer",
+"fecomposite" : "feComposite",
+"feconvolvematrix" : "feConvolveMatrix",
+"fediffuselighting" : "feDiffuseLighting",
+"fedisplacementmap" : "feDisplacementMap",
+"fedistantlight" : "feDistantLight",
+"fedropshadow" : "feDropShadow",
+"feflood" : "feFlood",
+"fefunca" : "feFuncA",
+"fefuncb" : "feFuncB",
+"fefuncg" : "feFuncG",
+"fefuncr" : "feFuncR",
+"fegaussianblur" : "feGaussianBlur",
+"feimage" : "feImage",
+"femerge" : "feMerge",
+"femergenode" : "feMergeNode",
+"femorphology" : "feMorphology",
+"feoffset" : "feOffset",
+"fepointlight" : "fePointLight",
+"fespecularlighting" : "feSpecularLighting",
+"fespotlight" : "feSpotLight",
+"fetile" : "feTile",
+"feturbulence" : "feTurbulence",
+"foreignobject" : "foreignObject",
+"glyphref" : "glyphRef",
+"lineargradient" : "linearGradient",
+"radialgradient" : "radialGradient",
+"textpath" : "textPath"
+  },
+  "attributeNames" : {
+"definitionurl" : "definitionURL",
+"attributename" : "attributeName",
+"attributetype" : "attributeType",
+"basefrequency" : "baseFrequency",
+"baseprofile" : "baseProfile",
+"calcmode" : "calcMode",
+"clippathunits" : "clipPathUnits",
+"diffuseconstant" : "diffuseConstant",
+"edgemode" : "edgeMode",
+"filterunits" : "filterUnits",
+"glyphref" : "glyphRef",
+"gradienttransform" : "gradientTransform",
+"gradientunits" : "gradientUnits",
+"kernelmatrix" : "kernelMatrix",
+"kernelunitlength" : "kernelUnitLength",
+"keypoints" : "keyPoints",
+"keysplines" : "keySplines",
+"keytimes" : "keyTimes",
+"lengthadjust" : "lengthAdjust",
+"limitingconeangle" : "limitingConeAngle",
+"markerheight" : "markerHeight",
+"markerunits" : "markerUnits",
+"markerwidth" : "markerWidth",
+"maskcontentunits" : "maskContentUnits",
+"maskunits" : "maskUnits",
+"numoctaves" : "numOctaves",
+"pathlength" : "pathLength",
+"patterncontentunits" : "patternContentUnits",
+"patterntransform" : "patternTransform",
+"patternunits" : "patternUnits",
+"pointsatx" : "pointsAtX",
+"pointsaty" : "pointsAtY",
+"pointsatz" : "pointsAtZ",
+"preservealpha" : "preserveAlpha",
+"preserveaspectratio" : "preserveAspectRatio",
+"primitiveunits" : "primitiveUnits",
+"refx" : "refX",
+"refy" : "refY",
+"repeatcount" : "repeatCount",
+"repeatdur" : "repeatDur",
+"requiredextensions" : "requiredExtensions",
+"requiredfeatures" : "requiredFeatures",
+"specularconstant" : "specularConstant",
+"specularexponent" : "specularExponent",
+"spreadmethod" : "spreadMethod",
+"startoffset" : "startOffset",
+"stddeviation" : "stdDeviation",
+"stitchtiles" : "stitchTiles",
+"surfacescale" : "surfaceScale",
+"systemlanguage" : "systemLanguage",
+"tablevalues" : "tableValues",
+"targetx" : "targetX",
+"targety" : "targetY",
+"textlength" : "textLength",
+"viewbox" : "viewBox",
+"viewtarget" : "viewTarget",
+"xchannelselector" : "xChannelSelector",
+"ychannelselector" : "yChannelSelector",
+"zoomandpan" : "zoomAndPan"
+  }
+}

+ 232 - 0
coverage/lcov-report/atlas-mobile-ts/App.js.html

@@ -0,0 +1,232 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/App.js</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../prettify.css" />
+    <link rel="stylesheet" href="../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../index.html">All files</a> / <a href="index.html">atlas-mobile-ts</a> App.js</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/12</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/4</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/12</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import 'react-native-gesture-handler';
+import React, { useState } from 'react';
+import { LogBox } from 'react-native';
+import Atlas from './src/components/Atlas';
+import { SafeAreaProvider } from 'react-native-safe-area-context';
+import { Asset } from 'expo-asset';
+import AppLoading from 'expo-app-loading';
+&nbsp;
+const App = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >()</span> =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >  LogBox.ignoreAllLogs();</span>
+  const [loading, setLoading] = <span class="cstat-no" title="statement not covered" >useState(false);</span>
+  const _cacheResourcesAsync = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >as</span>ync () =&gt; {</span>
+    const images = <span class="cstat-no" title="statement not covered" >[</span>
+      require('./assets/logo-white.png'),
+      require('./assets/cover-dark.png'),
+      require('./assets/cover.jpg'),
+      require('./assets/default-pfp.png'),
+      require('./assets/pothole.png'),
+      require('./assets/roadblock.png'),
+      require('./assets/barrier.png'),
+      require('./assets/bump.png'),
+      require('./assets/information.png'),
+      require('./assets/washroom.png'),
+      require('./assets/park.png'),
+    ];
+&nbsp;
+    const cacheImages = <span class="cstat-no" title="statement not covered" >images.map(<span class="fstat-no" title="function not covered" >im</span>age =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >      return Asset.fromModule(image).downloadAsync();</span>
+    }); 
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return Promise.all(cacheImages);</span>
+  }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  if (loading) {</span>
+<span class="cstat-no" title="statement not covered" >    return (</span>
+      &lt;AppLoading
+        // startAsync={_cacheResourcesAsync}
+        onFinish={<span class="fstat-no" title="function not covered" >()</span> =&gt; <span class="cstat-no" title="statement not covered" >setLoading(false)}</span>
+        onError={console.warn}
+      /&gt;
+    ); 
+  }
+<span class="cstat-no" title="statement not covered" >  return (</span>
+    &lt;SafeAreaProvider&gt;
+      &lt;Atlas/&gt;
+    &lt;/SafeAreaProvider&gt;
+  );
+}
+&nbsp;
+export default App</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../sorter.js"></script>
+        <script src="../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 142 - 0
coverage/lcov-report/atlas-mobile-ts/App.tsx.html

@@ -0,0 +1,142 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/App.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../prettify.css" />
+    <link rel="stylesheet" href="../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../index.html">All files</a> / <a href="index.html">atlas-mobile-ts</a> App.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/9</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/1</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/9</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import React from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { LogBox } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import 'react-native-gesture-handler';</span>
+<span class="cstat-no" title="statement not covered" >import { SafeAreaProvider } from 'react-native-safe-area-context';</span>
+<span class="cstat-no" title="statement not covered" >import Atlas from './src/components/Atlas';</span>
+import { Asset } from 'expo-asset';
+import AppLoading from 'expo-app-loading';
+import * as Updates from "expo-updates";
+&nbsp;
+/**
+ * The root app component.
+ * @component
+ */
+const App: React.FC = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >  LogBox.ignoreAllLogs();</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  return &lt;SafeAreaProvider&gt;&lt;Atlas/&gt;&lt;/SafeAreaProvider&gt;</span>
+}
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default App;</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../sorter.js"></script>
+        <script src="../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 112 - 0
coverage/lcov-report/atlas-mobile-ts/declarations.d.ts.html

@@ -0,0 +1,112 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/declarations.d.ts</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../prettify.css" />
+    <link rel="stylesheet" href="../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../index.html">All files</a> / <a href="index.html">atlas-mobile-ts</a> declarations.d.ts</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">declare module "*.svg" {
+  import { SvgProps } from "react-native-svg";
+  const content: React.FC&lt;SvgProps&gt;;
+  export default content;
+}
+&nbsp;
+&nbsp;
+&nbsp;
+&nbsp;
+&nbsp;</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../sorter.js"></script>
+        <script src="../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 191 - 0
coverage/lcov-report/atlas-mobile-ts/index.html

@@ -0,0 +1,191 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../prettify.css" />
+    <link rel="stylesheet" href="../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../index.html">All files</a> atlas-mobile-ts</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/29</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/7</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/29</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <div class="pad1">
+<table class="coverage-summary">
+<thead>
+<tr>
+   <th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
+   <th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
+   <th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
+   <th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
+   <th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
+   <th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
+   <th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
+</tr>
+</thead>
+<tbody><tr>
+	<td class="file low" data-value="App.js"><a href="App.js.html">App.js</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="12" class="abs low">0/12</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="2" class="abs low">0/2</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="4" class="abs low">0/4</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="12" class="abs low">0/12</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="App.tsx"><a href="App.tsx.html">App.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="9" class="abs low">0/9</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="1" class="abs low">0/1</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="9" class="abs low">0/9</td>
+	</tr>
+
+<tr>
+	<td class="file empty" data-value="declarations.d.ts"><a href="declarations.d.ts.html">declarations.d.ts</a></td>
+	<td data-value="0" class="pic empty">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct empty">0%</td>
+	<td data-value="0" class="abs empty">0/0</td>
+	<td data-value="0" class="pct empty">0%</td>
+	<td data-value="0" class="abs empty">0/0</td>
+	<td data-value="0" class="pct empty">0%</td>
+	<td data-value="0" class="abs empty">0/0</td>
+	<td data-value="0" class="pct empty">0%</td>
+	<td data-value="0" class="abs empty">0/0</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="index.js"><a href="index.js.html">index.js</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="1" class="abs low">0/1</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="1" class="abs low">0/1</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="jest.config.js"><a href="jest.config.js.html">jest.config.js</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="2" class="abs low">0/2</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="2" class="abs low">0/2</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="metro.config.js"><a href="metro.config.js.html">metro.config.js</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="5" class="abs low">0/5</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="2" class="abs low">0/2</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="5" class="abs low">0/5</td>
+	</tr>
+
+</tbody>
+</table>
+</div>
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../sorter.js"></script>
+        <script src="../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 112 - 0
coverage/lcov-report/atlas-mobile-ts/index.js.html

@@ -0,0 +1,112 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/index.js</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../prettify.css" />
+    <link rel="stylesheet" href="../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../index.html">All files</a> / <a href="index.html">atlas-mobile-ts</a> index.js</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/1</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/1</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import 'react-native-gesture-handler';
+import { registerRootComponent } from 'expo';
+&nbsp;
+import App from './App';
+&nbsp;
+// registerRootComponent calls AppRegistry.registerComponent('main', () =&gt; App);
+// It also ensures that whether you load the app in Expo Go or in a native build,
+// the environment is set up appropriately
+<span class="cstat-no" title="statement not covered" >registerRootComponent(App);</span>
+&nbsp;</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../sorter.js"></script>
+        <script src="../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 166 - 0
coverage/lcov-report/atlas-mobile-ts/jest.config.js.html

@@ -0,0 +1,166 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/jest.config.js</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../prettify.css" />
+    <link rel="stylesheet" href="../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../index.html">All files</a> / <a href="index.html">atlas-mobile-ts</a> jest.config.js</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">// jest.config.js
+const { defaults: tsjPreset } = <span class="cstat-no" title="statement not covered" >require('ts-jest/presets')</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >module.exports = {</span>
+  preset: 'react-native',
+  globals: {
+    'ts-jest': {
+      tsconfig: 'tsconfig.spec.json',
+    },
+  },
+  transform: {
+    '^.+\\.jsx$': 'babel-jest',
+    '^.+\\.tsx?$': 'ts-jest',
+  },
+  moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
+  "transformIgnorePatterns": [
+    "node_modules/(?!(jest-)?react-native|react-clone-referenced-element|@react-native-community|expo(nent)?|@expo(nent)?/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|@sentry/.*|@react-native-community/picker)/"
+  ],
+  collectCoverage: true,
+  collectCoverageFrom: [
+    "**/*.{js,jsx,ts,tsx}",
+    "!**/coverage/**",
+    "!**/node_modules/**",
+    "!**/docs/**",
+    "!**/babel.config.js",
+    "!**/jest.setup.js"
+  ],
+}</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../sorter.js"></script>
+        <script src="../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 130 - 0
coverage/lcov-report/atlas-mobile-ts/metro.config.js.html

@@ -0,0 +1,130 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/metro.config.js</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../prettify.css" />
+    <link rel="stylesheet" href="../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../index.html">All files</a> / <a href="index.html">atlas-mobile-ts</a> metro.config.js</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/5</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/5</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const { getDefaultConfig } = <span class="cstat-no" title="statement not covered" >require('metro-config');</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >module.exports = (<span class="fstat-no" title="function not covered" >as</span>ync () =&gt; {</span>
+  const {
+    resolver: { sourceExts, assetExts },
+  } = <span class="cstat-no" title="statement not covered" >await getDefaultConfig();</span>
+<span class="cstat-no" title="statement not covered" >  return {</span>
+    transformer: {
+      babelTransformerPath: require.resolve('react-native-svg-transformer'),
+    },
+    resolver: {
+      assetExts: assetExts.filter(<span class="fstat-no" title="function not covered" >ex</span>t =&gt; <span class="cstat-no" title="statement not covered" >ext !== 'svg')</span>,
+      sourceExts: [...sourceExts, 'svg'],
+    },
+  };
+})();</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../sorter.js"></script>
+        <script src="../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 610 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Atlas.tsx.html

@@ -0,0 +1,610 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Atlas.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../prettify.css" />
+    <link rel="stylesheet" href="../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components</a> Atlas.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/84</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/16</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/10</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/84</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a>
+<a name='L126'></a><a href='#L126'>126</a>
+<a name='L127'></a><a href='#L127'>127</a>
+<a name='L128'></a><a href='#L128'>128</a>
+<a name='L129'></a><a href='#L129'>129</a>
+<a name='L130'></a><a href='#L130'>130</a>
+<a name='L131'></a><a href='#L131'>131</a>
+<a name='L132'></a><a href='#L132'>132</a>
+<a name='L133'></a><a href='#L133'>133</a>
+<a name='L134'></a><a href='#L134'>134</a>
+<a name='L135'></a><a href='#L135'>135</a>
+<a name='L136'></a><a href='#L136'>136</a>
+<a name='L137'></a><a href='#L137'>137</a>
+<a name='L138'></a><a href='#L138'>138</a>
+<a name='L139'></a><a href='#L139'>139</a>
+<a name='L140'></a><a href='#L140'>140</a>
+<a name='L141'></a><a href='#L141'>141</a>
+<a name='L142'></a><a href='#L142'>142</a>
+<a name='L143'></a><a href='#L143'>143</a>
+<a name='L144'></a><a href='#L144'>144</a>
+<a name='L145'></a><a href='#L145'>145</a>
+<a name='L146'></a><a href='#L146'>146</a>
+<a name='L147'></a><a href='#L147'>147</a>
+<a name='L148'></a><a href='#L148'>148</a>
+<a name='L149'></a><a href='#L149'>149</a>
+<a name='L150'></a><a href='#L150'>150</a>
+<a name='L151'></a><a href='#L151'>151</a>
+<a name='L152'></a><a href='#L152'>152</a>
+<a name='L153'></a><a href='#L153'>153</a>
+<a name='L154'></a><a href='#L154'>154</a>
+<a name='L155'></a><a href='#L155'>155</a>
+<a name='L156'></a><a href='#L156'>156</a>
+<a name='L157'></a><a href='#L157'>157</a>
+<a name='L158'></a><a href='#L158'>158</a>
+<a name='L159'></a><a href='#L159'>159</a>
+<a name='L160'></a><a href='#L160'>160</a>
+<a name='L161'></a><a href='#L161'>161</a>
+<a name='L162'></a><a href='#L162'>162</a>
+<a name='L163'></a><a href='#L163'>163</a>
+<a name='L164'></a><a href='#L164'>164</a>
+<a name='L165'></a><a href='#L165'>165</a>
+<a name='L166'></a><a href='#L166'>166</a>
+<a name='L167'></a><a href='#L167'>167</a>
+<a name='L168'></a><a href='#L168'>168</a>
+<a name='L169'></a><a href='#L169'>169</a>
+<a name='L170'></a><a href='#L170'>170</a>
+<a name='L171'></a><a href='#L171'>171</a>
+<a name='L172'></a><a href='#L172'>172</a>
+<a name='L173'></a><a href='#L173'>173</a>
+<a name='L174'></a><a href='#L174'>174</a>
+<a name='L175'></a><a href='#L175'>175</a>
+<a name='L176'></a><a href='#L176'>176</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import {</span>
+  RacingSansOne_400Regular
+} from '@expo-google-fonts/racing-sans-one';
+<span class="cstat-no" title="statement not covered" >import { NavigationContainer } from '@react-navigation/native';</span>
+<span class="cstat-no" title="statement not covered" >import { MenuProvider } from 'react-native-popup-menu'</span>
+<span class="cstat-no" title="statement not covered" >import axios, { AxiosRequestConfig } from 'axios';</span>
+<span class="cstat-no" title="statement not covered" >import { useFonts } from 'expo-font';</span>
+<span class="cstat-no" title="statement not covered" >import { getItemAsync } from 'expo-secure-store';</span>
+<span class="cstat-no" title="statement not covered" >import { observer } from 'mobx-react';</span>
+<span class="cstat-no" title="statement not covered" >import React, { useEffect, useRef, useState } from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { AppState, SafeAreaView, StatusBar, Platform, Alert } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import { QueryClient, QueryClientProvider } from 'react-query';</span>
+<span class="cstat-no" title="statement not covered" >import { Splash } from '../components/Splash';</span>
+<span class="cstat-no" title="statement not covered" >import { colors, SECURESTORE_ACCESSTOKEN, SECURESTORE_REFRESHTOKEN } from '../utils/GlobalUtils';</span>
+<span class="cstat-no" title="statement not covered" >import { useAuth } from '../hooks/useAuth';</span>
+<span class="cstat-no" title="statement not covered" >import AuthorizedNavigator, { navigationRef } from '../navigation/AuthorizedNavigator';</span>
+<span class="cstat-no" title="statement not covered" >import UnauthorizedNavigator from '../navigation/UnauthorizedNavigator';</span>
+<span class="cstat-no" title="statement not covered" >import { authStore } from '../libs/auth/AuthStore';</span>
+<span class="cstat-no" title="statement not covered" >import { API_URL } from '../utils/RequestUtils';</span>
+<span class="cstat-no" title="statement not covered" >import {reportAxiosError} from '../libs/auth/core'</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >export enum T</span>okenState {</span>
+<span class="cstat-no" title="statement not covered" >  CheckingToken,</span>
+<span class="cstat-no" title="statement not covered" >  ValidToken,</span>
+<span class="cstat-no" title="statement not covered" >  InvalidToken</span>
+}
+&nbsp;
+const queryClient = <span class="cstat-no" title="statement not covered" >new QueryClient();</span>
+&nbsp;
+/**
+ * Sub-root component of the app. Contains all global providers (NavigationContainer and SafeAreaProvider for React Navigation, QueryClientProvider for react-query) and is responsible for restricting unauthenticated users to the Intro screen by listening to {@link AuthStore}'s accessToken value.
+ * @component
+ */
+const Atlas : React.FC = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+  /**
+   * Flag that is switched on when the app is checking for tokens in the keystore and in memory. When true, "Logging you in.." and a spinner will be displayed to the user.
+   */
+  const [checkingToken, setCheckingToken] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(true);</span>
+  const { refreshAccessToken } = <span class="cstat-no" title="statement not covered" >useAuth();</span>
+  const [fontsLoaded, error] = <span class="cstat-no" title="statement not covered" >useFonts({</span>
+    RacingSansOne_400Regular
+  });
+&nbsp;
+  /**
+   * Checks if there is an access token available in {@link AuthStore}, then checks if that access token is valid by calling the API. 
+   * If the response is valid, the access token will be stored in memory, otherwise the user will be directed to intro screen.
+   */
+  const checkToken = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
+    // check both the mobx store and secure storage for the token
+<span class="cstat-no" title="statement not covered" >    console.log('[Authentication]: Checking for access token in memory...')</span>
+    let currentAccessToken = <span class="cstat-no" title="statement not covered" >authStore.accessToken;</span>
+<span class="cstat-no" title="statement not covered" >    <span class="missing-if-branch" title="if path not taken" >I</span>if (!currentAccessToken) {</span>
+<span class="cstat-no" title="statement not covered" >      console.log('[Authentication]: No access token in memory, checking in secure store...')</span>
+<span class="cstat-no" title="statement not covered" >      currentAccessToken = await getItemAsync(SECURESTORE_ACCESSTOKEN);</span>
+    }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    <span class="missing-if-branch" title="if path not taken" >I</span>if (!currentAccessToken) {</span>
+<span class="cstat-no" title="statement not covered" >      console.log('[Authentication]: No access token in secure store, attempting to use a refresh token...')</span>
+      let refreshToken  = <span class="cstat-no" title="statement not covered" >authStore.refreshToken;</span>
+<span class="cstat-no" title="statement not covered" >      <span class="missing-if-branch" title="if path not taken" >I</span>if (!refreshToken) {</span>
+<span class="cstat-no" title="statement not covered" >        refreshToken = await getItemAsync(SECURESTORE_REFRESHTOKEN)</span>
+      }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >      <span class="missing-if-branch" title="if path not taken" >I</span>if (refreshToken) {</span>
+<span class="cstat-no" title="statement not covered" >        await refreshAccessToken()</span>
+<span class="cstat-no" title="statement not covered" >        currentAccessToken = authStore.accessToken</span>
+      }
+    }  
+    
+<span class="cstat-no" title="statement not covered" >    if (currentAccessToken) {</span>
+<span class="cstat-no" title="statement not covered" >      console.log('[Authentication]: Found access token, testing its validity...')</span>
+      // check to see if the token is valid by making test call
+      const requestConfig: AxiosRequestConfig = <span class="cstat-no" title="statement not covered" >{</span>
+        method: 'GET',
+        url: API_URL + "/api/me/",
+        headers: { "Authorization": "Bearer " + currentAccessToken }
+      };
+&nbsp;
+<span class="cstat-no" title="statement not covered" >      try {</span>
+        const response = <span class="cstat-no" title="statement not covered" >await axios(requestConfig);</span>
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (response.status == 200) {</span>
+<span class="cstat-no" title="statement not covered" >          await authStore.setAccessTokenAsync(currentAccessToken);</span>
+<span class="cstat-no" title="statement not covered" >          await authStore.setRefreshTokenAsync(await getItemAsync(SECURESTORE_REFRESHTOKEN))</span>
+<span class="cstat-no" title="statement not covered" >          await authStore.setIdAsync(response.data.id)</span>
+<span class="cstat-no" title="statement not covered" >          console.log('[Authentication]: Access token valid.')</span>
+        }
+      } catch (error) {
+        // check if access token can be refreshed
+<span class="cstat-no" title="statement not covered" >        console.log(error)</span>
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (error.response.status == 401) {</span>
+<span class="cstat-no" title="statement not covered" >          try {</span>
+<span class="cstat-no" title="statement not covered" >            await refreshAccessToken();</span>
+            // update authorization header w/ new token
+<span class="cstat-no" title="statement not covered" >            await axios({...requestConfig, headers: { "Authorization": "Bearer " + authStore.accessToken }}); </span>
+          } catch (error) {
+            
+          }
+        }
+        // something went wrong with the api call, log error and clear auth state
+<span class="cstat-no" title="statement not covered" >        reportAxiosError('[Authentication]: Something went wrong when retrieving an access token', error)</span>
+<span class="cstat-no" title="statement not covered" >        await authStore.setAccessTokenAsync(null);</span>
+<span class="cstat-no" title="statement not covered" >        await authStore.setRefreshTokenAsync(null);</span>
+<span class="cstat-no" title="statement not covered" >        await authStore.setNotificationTokenAsync(null);</span>
+<span class="cstat-no" title="statement not covered" >        await authStore.setIdAsync(null);</span>
+      }
+    }
+    else {
+      // no access token was found, user will be taken to login
+<span class="cstat-no" title="statement not covered" >      console.log('[Authentication]: No access token was found, prompting user to login.')</span>
+<span class="cstat-no" title="statement not covered" >      await authStore.setAccessTokenAsync(null);</span>
+<span class="cstat-no" title="statement not covered" >      await authStore.setRefreshTokenAsync(null);</span>
+<span class="cstat-no" title="statement not covered" >      await authStore.setNotificationTokenAsync(null);</span>
+<span class="cstat-no" title="statement not covered" >      await authStore.setIdAsync(null);</span>
+    }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    setCheckingToken(false);</span>
+  }
+  
+<span class="cstat-no" title="statement not covered" >  useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+    /**
+     * useEffect hook that is responsible for registering an appState "change" handler that will call {@linkcode checkToken} each time the app is opened or closed on the device.
+     * @memberOf Atlas
+     */
+    function <span class="fstat-no" title="function not covered" >registerAppStateChangeHandler(</span>) {
+<span class="cstat-no" title="statement not covered" >      AppState.addEventListener("change", <span class="fstat-no" title="function not covered" >(a</span>ppState: string) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (appState == 'active') {</span>
+<span class="cstat-no" title="statement not covered" >          console.log('[Authentication]: App opened, checking auth tokens...')</span>
+<span class="cstat-no" title="statement not covered" >          checkToken(); </span>
+        }
+      });
+<span class="cstat-no" title="statement not covered" >      return <span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        AppState.removeEventListener("change", <span class="fstat-no" title="function not covered" >(a</span>ppState: string) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >          <span class="missing-if-branch" title="if path not taken" >I</span>if (appState == 'active') {</span>
+<span class="cstat-no" title="statement not covered" >            checkToken(); </span>
+          }
+        });
+      };
+    }
+<span class="cstat-no" title="statement not covered" >    registerAppStateChangeHandler();</span>
+  }, [AppState.currentState]);
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+    /**
+   * Calls {@linkcode checkToken} when a change to the access token stored in {@link AuthStore} is detected. 
+   * @memberOf Atlas
+   */
+    const checkTokenOnAccessTokenChange = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >      console.log('[Authentication]: Change to accessToken detected, checking token state...')</span>
+<span class="cstat-no" title="statement not covered" >      await checkToken()</span>
+    }
+<span class="cstat-no" title="statement not covered" >    checkTokenOnAccessTokenChange()</span>
+  }, [authStore.accessToken]);
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  return (</span>
+    &lt;MenuProvider&gt;
+        &lt;SafeAreaView accessible={true} accessibilityLabel="rootView" style={{height: '100%', backgroundColor: colors.red}}&gt;
+        &lt;StatusBar barStyle='light-content' backgroundColor={colors.red}/&gt;
+        &lt;NavigationContainer ref={navigationRef}&gt;  
+          {checkingToken ? &lt;Splash/&gt; :
+          &lt;QueryClientProvider client={queryClient}&gt;
+            {authStore.accessToken ? &lt;AuthorizedNavigator  /&gt; : &lt;UnauthorizedNavigator /&gt; } 
+          &lt;/QueryClientProvider&gt; }
+        &lt;/NavigationContainer&gt;  
+      &lt;/SafeAreaView&gt;
+    &lt;/MenuProvider&gt;
+  );
+}
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default observer(Atlas);</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../sorter.js"></script>
+        <script src="../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 217 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/AuthLayout.tsx.html

@@ -0,0 +1,217 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth/AuthLayout.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Auth</a> AuthLayout.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import React from "react";</span>
+<span class="cstat-no" title="statement not covered" >import { ImageBackground, Keyboard, StyleSheet, TouchableWithoutFeedback, View } from "react-native";</span>
+&nbsp;
+/**
+ * Layout shared between all Unauthorized components (and the Profile screen)
+ * @category Unauthorized
+ * @component
+ */
+const UnauthorizedLayout : React.FC&lt;{noPadding?: boolean}&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>children, noPadding}) =&gt; {</span>
+&nbsp;
+    /**
+     * Dismisses keyboard.
+     */
+    const dismissKeyboard = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        Keyboard.dismiss();</span>
+    }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;View style={{height: '100%', width: '100%'}} &gt;
+            &lt;ImageBackground style={[!noPadding ? {padding: 25} : null, styles.background]} source={require('../../../assets/cover.jpg')}&gt;
+                &lt;TouchableWithoutFeedback style={{height: '100%', width: '100%'}} onPress={dismissKeyboard}&gt;
+                    &lt;View style={{height: '100%', width: '100%'}}&gt;
+                    {children}
+                    &lt;/View&gt;
+                &lt;/TouchableWithoutFeedback&gt;
+            &lt;/ImageBackground&gt;
+        &lt;/View&gt;
+    )
+}
+&nbsp;
+const styles = <span class="cstat-no" title="statement not covered" >StyleSheet.create({</span>
+    background: {
+        flex: 1,
+        resizeMode: 'cover',
+    },
+})
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default UnauthorizedLayout;</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../sorter.js"></script>
+        <script src="../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 574 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/Intro.tsx.html

@@ -0,0 +1,574 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth/Intro.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Auth</a> Intro.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/37</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/5</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/6</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/36</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a>
+<a name='L126'></a><a href='#L126'>126</a>
+<a name='L127'></a><a href='#L127'>127</a>
+<a name='L128'></a><a href='#L128'>128</a>
+<a name='L129'></a><a href='#L129'>129</a>
+<a name='L130'></a><a href='#L130'>130</a>
+<a name='L131'></a><a href='#L131'>131</a>
+<a name='L132'></a><a href='#L132'>132</a>
+<a name='L133'></a><a href='#L133'>133</a>
+<a name='L134'></a><a href='#L134'>134</a>
+<a name='L135'></a><a href='#L135'>135</a>
+<a name='L136'></a><a href='#L136'>136</a>
+<a name='L137'></a><a href='#L137'>137</a>
+<a name='L138'></a><a href='#L138'>138</a>
+<a name='L139'></a><a href='#L139'>139</a>
+<a name='L140'></a><a href='#L140'>140</a>
+<a name='L141'></a><a href='#L141'>141</a>
+<a name='L142'></a><a href='#L142'>142</a>
+<a name='L143'></a><a href='#L143'>143</a>
+<a name='L144'></a><a href='#L144'>144</a>
+<a name='L145'></a><a href='#L145'>145</a>
+<a name='L146'></a><a href='#L146'>146</a>
+<a name='L147'></a><a href='#L147'>147</a>
+<a name='L148'></a><a href='#L148'>148</a>
+<a name='L149'></a><a href='#L149'>149</a>
+<a name='L150'></a><a href='#L150'>150</a>
+<a name='L151'></a><a href='#L151'>151</a>
+<a name='L152'></a><a href='#L152'>152</a>
+<a name='L153'></a><a href='#L153'>153</a>
+<a name='L154'></a><a href='#L154'>154</a>
+<a name='L155'></a><a href='#L155'>155</a>
+<a name='L156'></a><a href='#L156'>156</a>
+<a name='L157'></a><a href='#L157'>157</a>
+<a name='L158'></a><a href='#L158'>158</a>
+<a name='L159'></a><a href='#L159'>159</a>
+<a name='L160'></a><a href='#L160'>160</a>
+<a name='L161'></a><a href='#L161'>161</a>
+<a name='L162'></a><a href='#L162'>162</a>
+<a name='L163'></a><a href='#L163'>163</a>
+<a name='L164'></a><a href='#L164'>164</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+import axios from "axios";
+<span class="cstat-no" title="statement not covered" >import { loadAsync, makeRedirectUri, ResponseType } from "expo-auth-session";</span>
+<span class="cstat-no" title="statement not covered" >import * as WebBrowser from 'expo-web-browser';</span>
+<span class="cstat-no" title="statement not covered" >import { maybeCompleteAuthSession } from "expo-web-browser";</span>
+import jwt_decode from 'jwt-decode';
+<span class="cstat-no" title="statement not covered" >import React, { useState } from "react";</span>
+<span class="cstat-no" title="statement not covered" >import { ActivityIndicator, Image, StyleSheet, Text, TouchableOpacity, View } from "react-native";</span>
+import { UnAuthStackNavigationProp } from "../../navigation/UnauthorizedNavigator";
+import { authStore, IdToken } from "../../libs/auth/AuthStore";
+<span class="cstat-no" title="statement not covered" >import {authenticate} from '../../libs/auth/core'</span>
+<span class="cstat-no" title="statement not covered" >import { API_URL } from "../../utils/RequestUtils";</span>
+<span class="cstat-no" title="statement not covered" >import { PrimaryButton, SecondaryButton } from "../Buttons";</span>
+<span class="cstat-no" title="statement not covered" >import UnauthorizedLayout from "./AuthLayout";</span>
+<span class="cstat-no" title="statement not covered" >import { testTag } from "../../utils/GlobalUtils";</span>
+&nbsp;
+/**
+ * Props used by the {@link Intro} screen.
+ */
+export interface IntroProps {
+    /**The {@link AuthStackNavigationProp} navigation object used to interact with the {@link Auth} navigator.*/
+    navigation: UnAuthStackNavigationProp;
+}
+&nbsp;
+/**
+ * A base url for the api's authorization endpoints
+ */
+const issuer = <span class="cstat-no" title="statement not covered" >API_URL + "/o";</span>
+&nbsp;
+/**
+ * An object containing the discovery endpoints for the api, necessary for OIDC authentication {@link https://swagger.io/docs/specification/authentication/openid-connect-discovery/}
+ */
+const discovery = <span class="cstat-no" title="statement not covered" >{</span>
+    authorizationEndpoint: issuer + "/authorize/",
+    tokenEndpoint: issuer + "/token/",
+    revocationEndpoint: issuer + "/revoke/",
+};
+&nbsp;
+/**
+ * Creates a browser session through which the user will login
+ */
+<span class="cstat-no" title="statement not covered" >maybeCompleteAuthSession();</span>
+&nbsp;
+/**
+ * The Intro screen displayed to unauthenticated users. Contains necessary methods to facilitate login and navigation to the [Registration]{@link RegisterMain} screens.
+ * @component
+ * @category Unauthorized
+ */
+const Intro : React.FC&lt;IntroProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>navigation}) =&gt; {</span>
+    /**
+     * @type {string} 
+     * React state holding the login result message to display to the user.
+     * */
+    const loginMessageState = <span class="cstat-no" title="statement not covered" >"";</span>
+    const [loginMessage, setLoginMessage] = <span class="cstat-no" title="statement not covered" >useState&lt;string&gt;(loginMessageState);</span>
+    /**
+     * @type {boolean} 
+     * React state holding the error state of the component.
+     * */
+     const errorState = <span class="cstat-no" title="statement not covered" >false;</span>
+    const [error, setError] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(errorState);</span>
+&nbsp;
+    const redirectUri = <span class="cstat-no" title="statement not covered" >makeRedirectUri({</span>
+        path: 'callback'
+    });
+&nbsp;
+    /**
+     * Function that initiates the login flow. It opens up with the in app browser and sends an authorization request to the API, which redirects the user to the backend login page. 
+     * If the credentials entered are valid, the OAuth Authorization Code flow will occur, which results in the user recieving an access token and refresh token which are then stored in {@link AuthStore}.
+     * */
+    const login = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        setLoginMessage("Logging you in...");</span>
+        
+        const result = <span class="cstat-no" title="statement not covered" >await authenticate({</span>
+            clientId: "atlas.mobile",
+            responseType: ResponseType.Code,
+            redirectUri,
+            usePKCE: true,
+            scopes: ['openid'],
+            
+        }, discovery)
+&nbsp;
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (result.errorMessage) {</span>
+<span class="cstat-no" title="statement not covered" >            setError(true)</span>
+<span class="cstat-no" title="statement not covered" >            setLoginMessage(result.errorMessage)</span>
+        }
+    }   
+&nbsp;
+    /**
+     * Navigates to {@link RegisterMain}.
+     */
+    const goToRegistration = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(): void =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        console.log('[Navigation]: Navigating to registration page.')</span>
+<span class="cstat-no" title="statement not covered" >        navigation.navigate("Register");</span>
+    }
+&nbsp;
+    /**
+     * Opens up the [privacy policy page]{@link https://app.clicknpush.ca/privacy}.
+     */
+    const openPrivacyPolicy = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        console.log('[Navigation]: Opening privacy policy.')</span>
+<span class="cstat-no" title="statement not covered" >        await WebBrowser.openBrowserAsync(API_URL + "/privacy")</span>
+    }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;UnauthorizedLayout&gt;
+            {!loginMessage ?
+            &lt;View style={styles.introContainer}&gt;
+                &lt;View style={styles.brandContainer}&gt;
+                    &lt;Image style={{flex: 1}} resizeMode="contain" source={require('../../../assets/logo-white.png')}&gt;&lt;/Image&gt;
+                    &lt;Text style={styles.title} &gt;Click &amp; Push&lt;/Text&gt;
+                &lt;/View&gt;
+                &lt;View style={styles.btnContainer}&gt;
+                    &lt;PrimaryButton accessibilityLabel="introLoginBtn" text="Login" onPress={login}/&gt;
+                    &lt;SecondaryButton accessibilityLabel="introRegisterBtn" text="Create account" onPress={goToRegistration} /&gt;
+                &lt;/View&gt;
+            &lt;/View&gt; :
+            &lt;View style={{height: '100%', justifyContent: "center", alignItems: "center"}}&gt;
+                &lt;Text style={{color: 'white', fontSize: 20, marginBottom: 30}}&gt;{loginMessage}&lt;/Text&gt;
+                {!error ? &lt;ActivityIndicator { ...testTag("introSpinner")} color='white' size="large"/&gt; : &lt;PrimaryButton { ...testTag("introOkayBtn")} text="Okay" onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; {<span class="cstat-no" title="statement not covered" >setError(false); <span class="cstat-no" title="statement not covered" ></span>setLoginMessage('')}}</span>/&gt; }
+            &lt;/View&gt; }
+            &lt;TouchableOpacity { ...testTag("introPrivacyBtn")} onPress={<span class="fstat-no" title="function not covered" >async </span>() =&gt; <span class="cstat-no" title="statement not covered" >await openPrivacyPolicy()}</span>&gt;
+                &lt;Text style={{fontSize: 12, textDecorationLine: "underline", alignSelf: "flex-end", color: 'white'}}&gt;Privacy policy&lt;/Text&gt;
+            &lt;/TouchableOpacity&gt;
+        &lt;/UnauthorizedLayout&gt;
+    )
+}
+&nbsp;
+const styles = <span class="cstat-no" title="statement not covered" >StyleSheet.create({</span>
+    introContainer: {
+        flex: 1,
+        marginVertical: 50,
+        alignItems: "center",
+        justifyContent: 'space-between'
+    },
+    brandContainer: {
+        flex: 2,
+        marginVertical: 50,
+        alignItems: "center",
+    },
+    title: {
+        marginTop: 30, 
+        color: 'white',
+        fontSize: 30
+    },
+    btnContainer: {
+        flex: 1,
+        alignItems: 'center',
+        width: '100%',
+    },
+    registerBtn: {
+        borderColor: 'white',
+        borderWidth: 2,
+        backgroundColor: 'transparent',
+    }
+})
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default Intro;</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../sorter.js"></script>
+        <script src="../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 595 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegisterMain.tsx.html

@@ -0,0 +1,595 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth/RegisterMain.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Auth</a> RegisterMain.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/35</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/13</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/7</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/34</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a>
+<a name='L126'></a><a href='#L126'>126</a>
+<a name='L127'></a><a href='#L127'>127</a>
+<a name='L128'></a><a href='#L128'>128</a>
+<a name='L129'></a><a href='#L129'>129</a>
+<a name='L130'></a><a href='#L130'>130</a>
+<a name='L131'></a><a href='#L131'>131</a>
+<a name='L132'></a><a href='#L132'>132</a>
+<a name='L133'></a><a href='#L133'>133</a>
+<a name='L134'></a><a href='#L134'>134</a>
+<a name='L135'></a><a href='#L135'>135</a>
+<a name='L136'></a><a href='#L136'>136</a>
+<a name='L137'></a><a href='#L137'>137</a>
+<a name='L138'></a><a href='#L138'>138</a>
+<a name='L139'></a><a href='#L139'>139</a>
+<a name='L140'></a><a href='#L140'>140</a>
+<a name='L141'></a><a href='#L141'>141</a>
+<a name='L142'></a><a href='#L142'>142</a>
+<a name='L143'></a><a href='#L143'>143</a>
+<a name='L144'></a><a href='#L144'>144</a>
+<a name='L145'></a><a href='#L145'>145</a>
+<a name='L146'></a><a href='#L146'>146</a>
+<a name='L147'></a><a href='#L147'>147</a>
+<a name='L148'></a><a href='#L148'>148</a>
+<a name='L149'></a><a href='#L149'>149</a>
+<a name='L150'></a><a href='#L150'>150</a>
+<a name='L151'></a><a href='#L151'>151</a>
+<a name='L152'></a><a href='#L152'>152</a>
+<a name='L153'></a><a href='#L153'>153</a>
+<a name='L154'></a><a href='#L154'>154</a>
+<a name='L155'></a><a href='#L155'>155</a>
+<a name='L156'></a><a href='#L156'>156</a>
+<a name='L157'></a><a href='#L157'>157</a>
+<a name='L158'></a><a href='#L158'>158</a>
+<a name='L159'></a><a href='#L159'>159</a>
+<a name='L160'></a><a href='#L160'>160</a>
+<a name='L161'></a><a href='#L161'>161</a>
+<a name='L162'></a><a href='#L162'>162</a>
+<a name='L163'></a><a href='#L163'>163</a>
+<a name='L164'></a><a href='#L164'>164</a>
+<a name='L165'></a><a href='#L165'>165</a>
+<a name='L166'></a><a href='#L166'>166</a>
+<a name='L167'></a><a href='#L167'>167</a>
+<a name='L168'></a><a href='#L168'>168</a>
+<a name='L169'></a><a href='#L169'>169</a>
+<a name='L170'></a><a href='#L170'>170</a>
+<a name='L171'></a><a href='#L171'>171</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import React, { useEffect, useState } from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { Alert, Dimensions, StyleSheet, View } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import 'react-native-get-random-values';</span>
+<span class="cstat-no" title="statement not covered" >import { Text } from 'react-native-paper';</span>
+import { UnAuthStackNavigationProp } from '../../navigation/UnauthorizedNavigator';
+<span class="cstat-no" title="statement not covered" >import { testTag } from '../../utils/GlobalUtils';</span>
+<span class="cstat-no" title="statement not covered" >import { PrimaryButton } from '../Buttons';</span>
+<span class="cstat-no" title="statement not covered" >import UnauthorizedLayout from './AuthLayout';</span>
+<span class="cstat-no" title="statement not covered" >import RegisterCredentials from './RegistrationSteps/RegisterCredential';</span>
+<span class="cstat-no" title="statement not covered" >import RegisterImage from './RegistrationSteps/RegisterImage';</span>
+<span class="cstat-no" title="statement not covered" >import RegisterMeasurements from './RegistrationSteps/RegisterMeasurements';</span>
+<span class="cstat-no" title="statement not covered" >import RegisterPassword from './RegistrationSteps/RegisterPassword';</span>
+&nbsp;
+/**
+ * {@link RegisterMain} component props.
+ */
+export interface RegisterProps {
+  /**The navigation object used to interact with the {@link Auth} navigator.*/
+  navigation: UnAuthStackNavigationProp
+}
+&nbsp;
+export interface RegisterStepProps {
+  changeStep: (stepNumber: number, stepSubtitleText: string) =&gt; void;
+  setFormValues: (formValues: RegisterFormValues) =&gt; void
+  formValues: RegisterFormValues
+}
+&nbsp;
+export interface RegisterFormValues {
+  username?: string;
+  email?: string;
+  password?: string;
+  confirmPassword?: string;
+  sagitta?: false
+  height?: string;
+  weight?: string;
+}
+&nbsp;
+/**
+ * The main registration component. Acts as a backdrop for all intermediate registration steps. 
+ * **Note: The registration components make heavy use of a library called Formik in order to created validated forms. It's recommended to check out the docs for that 
+ * (https://formik.org/docs/guides/react-native)**
+ * @category Unauthorized
+ * @subcategory Registration
+ * @component
+ */
+export const <span class="cstat-no" title="statement not covered" >RegisterMain : React.FC&lt;RegisterProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>{</span>navigation}) =&gt; {</span>
+  
+  /**Holds an integer value that maps to a step in the registration process. 
+   * The mapping is as follows:
+   * - 1 -&gt; Username and Email 
+   * - 2 -&gt; Password
+   * - 3 -&gt; Sagitta and Measurements
+   * - 4 -&gt; Profile picture and submission
+   * - 5 -&gt; Result
+   */
+  const stepState = <span class="cstat-no" title="statement not covered" >1;</span>
+  const [step, setStep] = <span class="cstat-no" title="statement not covered" >useState(stepState);</span>
+  /**
+   * Holds the current subtitle text.
+   */
+&nbsp;
+  const subTitleState = <span class="cstat-no" title="statement not covered" >"Let's start with some basic account information.";</span>
+  const [subtitle, setSubtitle] = <span class="cstat-no" title="statement not covered" >useState&lt;string&gt;(subTitleState);</span>
+&nbsp;
+  /**
+   * An object containing all the current form values
+   */
+  const [formValues, setFormValues] = <span class="cstat-no" title="statement not covered" >useState&lt;RegisterFormValues&gt;({}); </span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+      /**
+       * Handler that intercepts a request to leave the registration screen and asks the user to confirm that they want to leave.
+       * If they confirm they want to leave, all registration state will reset and the user will be directed back to {@link Intro}.
+       * @memberOf RegisterMain
+       */
+      const preventExitFromRegistration = <span class="cstat-no" title="statement not covered" >navigation.addListener('beforeRemove', <span class="fstat-no" title="function not covered" >(e</span>) =&gt; {</span>
+        // make sure we aren't at the last step for some reason
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (step != 5) {    </span>
+<span class="cstat-no" title="statement not covered" >          e.preventDefault();</span>
+          
+          // display an "Are you sure?" alert
+<span class="cstat-no" title="statement not covered" >           Alert.alert(</span>
+            'Going so soon?',
+            'Are you sure you want to cancel registration?',
+            [
+              { text: "Don't leave", style: 'cancel', onPress: <span class="fstat-no" title="function not covered" >() =</span>&gt; {} },
+              {
+                text: 'Discard',
+                style: 'destructive',
+                onPress: <span class="fstat-no" title="function not covered" >() =</span>&gt; {
+                  // if they are sure, reset the form and take them back to the intro
+<span class="cstat-no" title="statement not covered" >                  setFormValues({});</span>
+<span class="cstat-no" title="statement not covered" >                  navigation.dispatch(e.data.action)</span>
+                },
+              },
+            ]
+          );
+        }
+      })
+<span class="cstat-no" title="statement not covered" >      return preventExitFromRegistration;</span>
+    }, [navigation, step]);
+&nbsp;
+  /**
+   * Changes the registration step to the given value.
+   */
+  const changeStep = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(s</span>tep: any, subtitle: any) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    setStep(step);</span>
+<span class="cstat-no" title="statement not covered" >    setSubtitle(subtitle);</span>
+<span class="cstat-no" title="statement not covered" >    console.log("[Registration]: Changing to registration step " + step + " with subtitle:" + subtitle)</span>
+  }
+&nbsp;
+  /**
+   * Returns to the intro screen.
+   */
+  const finish = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    navigation.pop();</span>
+<span class="cstat-no" title="statement not covered" >    console.log("[Registration]:  Going back to intro screen from registration")</span>
+  }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  return (</span>
+    &lt;UnauthorizedLayout&gt;
+      &lt;View style={styles.brandContainer} {...testTag('registerWelcomeContainer')}&gt;
+        {step != 5 ?
+        &lt;Text style={styles.title} &gt;Welcome!&lt;/Text&gt; : null}
+        &lt;Text style={styles.subtitle}&gt;{subtitle}&lt;/Text&gt;
+      &lt;/View&gt;
+      &lt;View&gt;{
+        step == 1 ? &lt;RegisterCredentials setFormValues={setFormValues} formValues={formValues} changeStep={changeStep}/&gt; : 
+        step == 2 ? &lt;RegisterPassword setFormValues={setFormValues} formValues={formValues} changeStep={changeStep}/&gt; : 
+        step == 3 ? &lt;RegisterMeasurements setFormValues={setFormValues} formValues={formValues} changeStep={changeStep}/&gt; : 
+        step == 4 ? &lt;RegisterImage setFormValues={setFormValues} formValues={formValues} changeStep={changeStep} /&gt; :
+        step == 5 ? &lt;PrimaryButton style={{marginTop: 30}} text="Okay" onPress={finish} /&gt; : null}
+      &lt;/View&gt;
+    &lt;/UnauthorizedLayout&gt;
+  )
+}
+&nbsp;
+const styles = <span class="cstat-no" title="statement not covered" >StyleSheet.create({</span>
+  container: {
+    position: 'absolute',
+    width: Dimensions.get('window').width,
+    height: Dimensions.get('window').height,
+    flex: 1,
+    justifyContent: 'flex-start',
+    resizeMode: 'cover',
+  },
+  brandContainer: {
+    marginTop: 60,  
+    marginHorizontal: 25,
+    flexDirection: 'column',
+    justifyContent: 'space-evenly'
+  },
+  title: {
+    color: 'white',
+    fontSize: 20
+  },
+&nbsp;
+  subtitle: {
+    color: 'white',
+    fontSize: 15,
+    marginTop: 20
+  },
+});
+ </pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../sorter.js"></script>
+        <script src="../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 433 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterCredential.tsx.html

@@ -0,0 +1,433 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterCredential.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Auth/RegistrationSteps</a> RegisterCredential.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/19</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/4</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/19</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { Formik } from 'formik';</span>
+<span class="cstat-no" title="statement not covered" >import React from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { Dimensions, StyleSheet, TextInput, View } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import 'react-native-get-random-values';</span>
+<span class="cstat-no" title="statement not covered" >import { Text } from 'react-native-paper';</span>
+<span class="cstat-no" title="statement not covered" >import { testTag } from '../../../utils/GlobalUtils';</span>
+<span class="cstat-no" title="statement not covered" >import { credsSchema, RegisterCredsValues } from '../../../utils/RegistrationUtils';</span>
+<span class="cstat-no" title="statement not covered" >import { PrimaryButton } from '../../Buttons';</span>
+import { RegisterStepProps } from '../RegisterMain';
+&nbsp;
+/**
+ * This component displays a form for the new user's email and password to-be.
+ */
+const RegisterCredentials: React.FC&lt;RegisterStepProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>changeStep, setFormValues, formValues}) =&gt; {</span>
+    /**
+    * The initial measurement values are set to the current email and username values of the parent form data object
+    */
+    const initialValues: RegisterCredsValues = <span class="cstat-no" title="statement not covered" >{email: formValues.email, username: formValues.username};</span>
+&nbsp;
+    /* 
+    * Updates the form values and progresses to the password step
+    */
+    const next = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(n</span>ewFormValues: RegisterCredsValues) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >      setFormValues({...formValues, email: newFormValues.email, username: newFormValues.username});</span>
+<span class="cstat-no" title="statement not covered" >      console.log("[Registration]: Registration form values updated")</span>
+<span class="cstat-no" title="statement not covered" >      changeStep(2, "Next, we'll have you set a password.");</span>
+    }
+    
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;Formik 
+            initialValues={initialValues}
+            validationSchema={credsSchema}
+            enableReinitialize={true}
+            onSubmit={<span class="fstat-no" title="function not covered" >values </span>=&gt; <span class="cstat-no" title="statement not covered" >next(values)}</span>&gt;
+            {<span class="fstat-no" title="function not covered" >({</span> handleChange, handleBlur, handleSubmit, values, errors, touched }) =&gt; (
+<span class="cstat-no" title="statement not covered" >              &lt;View style={{margin: 20}}&gt;</span>
+                  &lt;TextInput 
+                    {...testTag('regUsername')}
+                    style={styles.textInput}
+                    placeholder="Username" 
+                    value={values.username}
+                    onChangeText={handleChange('username')}
+                    onBlur={handleBlur('username')} /&gt;
+                  {errors.username &amp;&amp; touched.username ? &lt;Text style={styles.errorText}&gt;{errors.username}&lt;/Text&gt; : null}
+                  &lt;TextInput 
+                    {...testTag('regEmail')}
+                    style={styles.textInput}
+                    placeholder="Email" 
+                    value={values.email}
+                    onChangeText={handleChange('email')} 
+                    onBlur={handleBlur('email')} /&gt;
+                  {errors.email &amp;&amp; touched.email ? &lt;Text style={styles.errorText}&gt;{errors.email}&lt;/Text&gt; : null}
+                  &lt;PrimaryButton accessibilityLabel='regCredsNext' style={{marginTop: 30}} onPress={handleSubmit as any} text="Next"/&gt;
+              &lt;/View&gt;
+            )}
+        &lt;/Formik&gt;
+    ) 
+}
+&nbsp;
+const styles = <span class="cstat-no" title="statement not covered" >StyleSheet.create({</span>
+    container: {
+      position: 'absolute',
+      width: Dimensions.get('window').width,
+      height: Dimensions.get('window').height,
+      flex: 1,
+      justifyContent: 'flex-start',
+      resizeMode: 'cover',
+    },
+  
+    textContainer: { 
+      marginHorizontal: 20,
+      marginBottom: 30,
+      borderRadius: 50,
+    },
+  
+    textInput: {
+      marginVertical: 7,
+      paddingLeft: 30,
+      borderRadius: 50,
+      overflow: 'hidden',
+      backgroundColor: 'white',
+      height: 50
+    },
+&nbsp;
+    errorText: {
+      alignSelf: 'flex-end',
+      color: 'red',
+      fontSize: 15,
+      marginBottom: 10,
+    },
+&nbsp;
+    errorInput: {
+      borderWidth: 2,
+      borderColor: 'red'
+    },
+  
+    nextBtn: {
+      marginHorizontal: 20,
+      marginBottom: 60,
+      borderRadius: 50,
+      justifyContent: 'center',
+      backgroundColor: '#df3f3f',
+      margin: 5,
+      height: 50,
+      alignItems: 'center'
+    },
+  })
+ 
+<span class="cstat-no" title="statement not covered" >export default RegisterCredentials;</span>
+ </pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 490 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterImage.tsx.html

@@ -0,0 +1,490 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterImage.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Auth/RegistrationSteps</a> RegisterImage.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/48</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/10</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/47</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a>
+<a name='L126'></a><a href='#L126'>126</a>
+<a name='L127'></a><a href='#L127'>127</a>
+<a name='L128'></a><a href='#L128'>128</a>
+<a name='L129'></a><a href='#L129'>129</a>
+<a name='L130'></a><a href='#L130'>130</a>
+<a name='L131'></a><a href='#L131'>131</a>
+<a name='L132'></a><a href='#L132'>132</a>
+<a name='L133'></a><a href='#L133'>133</a>
+<a name='L134'></a><a href='#L134'>134</a>
+<a name='L135'></a><a href='#L135'>135</a>
+<a name='L136'></a><a href='#L136'>136</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import axios from 'axios';</span>
+<span class="cstat-no" title="statement not covered" >import React, { useState } from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { Image, TouchableOpacity, View } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import 'react-native-get-random-values';</span>
+<span class="cstat-no" title="statement not covered" >import { ActivityIndicator, Text } from 'react-native-paper';</span>
+<span class="cstat-no" title="statement not covered" >import { API_URL, reportAxiosError } from '../../../utils/RequestUtils';</span>
+<span class="cstat-no" title="statement not covered" >import { PrimaryButton, SecondaryButton } from '../../Buttons';</span>
+<span class="cstat-no" title="statement not covered" >import { PhotoPicker } from '../../PhotoPicker';</span>
+<span class="cstat-no" title="statement not covered" >import { Separator } from '../../Separator';</span>
+import { RegisterStepProps } from '../RegisterMain';
+&nbsp;
+/**
+ * This component displays an interface to upload a profile picture
+ */
+const RegisterImage: React.FC&lt;RegisterStepProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>changeStep, formValues}) =&gt; {</span>
+  /**
+   * Stores the base64 of the user's selected profile pic
+   */ 
+  const [photoBase64, setPhotoBase64] = <span class="cstat-no" title="statement not covered" >useState&lt;string&gt;();</span>
+  /**
+   * This flag is set to true when the registration submission is being processed. An activity spinner will display while it is true
+   */ 
+  const [loadingSubmission, toggleLoading] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+  /**
+   * This flag toggles the menu that is used to choose a photo source (Library or Camera).
+   */ 
+  const [photoSourceMenuOpened, togglePhotoSourceMenu] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false)</span>
+&nbsp;
+  /**
+     * Reverse back to measurements step
+     */ 
+  const back = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    console.log("[Registration]: Registration form values updated")</span>
+<span class="cstat-no" title="statement not covered" >    changeStep(3, "Will you be using a Sagitta?")</span>
+  }
+&nbsp;
+  /**
+   * Prepares and sends a registration request to the api
+   */ 
+  const register = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
+    // toggle the loading flag and change status
+<span class="cstat-no" title="statement not covered" >    toggleLoading(true);</span>
+<span class="cstat-no" title="statement not covered" >    changeStep(4, 'Hang tight for a moment while we create your account.')</span>
+&nbsp;
+    // create FormData and send request
+    const formData = <span class="cstat-no" title="statement not covered" >prepareFormData()    </span>
+<span class="cstat-no" title="statement not covered" >    await sendRegisterRequest(formData)</span>
+  }
+&nbsp;
+  // Returns a FormData object containing all the form values from each registration step, including the image (in b64) chosen on this step
+  const prepareFormData = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(): FormData =</span>&gt;  {</span>
+<span class="cstat-no" title="statement not covered" >    console.log("[Registration]: Preparing form data...")</span>
+    let formData = <span class="cstat-no" title="statement not covered" >new FormData();</span>
+    let processedFormValues;
+<span class="cstat-no" title="statement not covered" >    if (formValues.height &amp;&amp; formValues.weight) {</span>
+<span class="cstat-no" title="statement not covered" >      processedFormValues = {...formValues, height: parseFloat(formValues.height), weight: parseFloat(formValues.weight)}</span>
+    }
+    else {
+<span class="cstat-no" title="statement not covered" >      processedFormValues = {</span>
+        email: formValues.email,
+        username: formValues.username,
+        password: formValues.password,
+      };
+    }
+<span class="cstat-no" title="statement not covered" >    formData.append('userInfo', JSON.stringify(processedFormValues));</span>
+<span class="cstat-no" title="statement not covered" >    formData.append('avatar', 'data:image/png;base64,' + photoBase64);</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    console.log("[Registration]: Form data prepared")</span>
+<span class="cstat-no" title="statement not covered" >    return formData</span>
+  }
+&nbsp;
+  const sendRegisterRequest = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>(formData: FormData) =&gt; {</span>
+    // initialize registration result message
+    let resultMessage = <span class="cstat-no" title="statement not covered" >'';</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    console.log("[Registration]: Sending registration request...")</span>
+    // send request, notify user of result
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    try {</span>
+      const response = <span class="cstat-no" title="statement not covered" >await axios({</span>
+        method: 'post',
+        url: API_URL + '/api/register/',
+        timeout: 50000,
+        data: formData,
+      });
+<span class="cstat-no" title="statement not covered" >      if (response.status == 200) {</span>
+<span class="cstat-no" title="statement not covered" >        resultMessage = 'Success! Congratulations on registering for your new account, you can now login!';  </span>
+      }
+      else {
+<span class="cstat-no" title="statement not covered" >        resultMessage = 'Something went wrong when trying to set up your account. Please try again.'; </span>// TODO: add contact details?  
+      }
+      
+    } catch (error) {
+<span class="cstat-no" title="statement not covered" >      resultMessage = 'Something went wrong when trying to set up your account. Please try again.'; </span>// TODO: add contact details?
+<span class="cstat-no" title="statement not covered" >      reportAxiosError('Something went wrong with user registration', error);</span>
+    }
+<span class="cstat-no" title="statement not covered" >    toggleLoading(false);</span>
+<span class="cstat-no" title="statement not covered" >    changeStep(5, resultMessage); </span>
+  }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  return (</span>
+    &lt;View&gt;
+      { !loadingSubmission ?
+      &lt;View&gt;
+        &lt;TouchableOpacity onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >togglePhotoSourceMenu(true)}</span> style={{justifyContent: 'center', }}&gt;
+          { photoBase64 != null ?
+          &lt;Image style={{alignSelf: 'center', borderRadius: 100, width: 200, height: 200, marginBottom: 5, marginTop: 30,}} source={{uri: 'data:image/png;base64,' + photoBase64}} /&gt; :
+          &lt;Image style={{alignSelf: 'center', borderRadius: 100, width: 200, height: 200, marginBottom: 5, marginTop: 30,}} source={require('../../../../assets/default-pfp.png')} /&gt; 
+          }   
+          &lt;Text style={{alignSelf: 'center', marginVertical: 20, color: 'white'}}&gt;Choose photo&lt;/Text&gt;
+        &lt;/TouchableOpacity&gt;
+        &lt;View style={{margin: 20}}&gt;
+          &lt;Separator color="lightgray" /&gt;
+          &lt;PrimaryButton text="Register" onPress={register} style={{marginVertical: 20}} /&gt;
+          &lt;SecondaryButton text="Back" onPress={back} style={{marginBottom: 20}} /&gt;
+        &lt;/View&gt; 
+      &lt;/View&gt;
+      : 
+      &lt;View&gt;
+          &lt;ActivityIndicator style={{marginTop: 200}} size="large" animating={true} color="red"/&gt;
+      &lt;/View&gt;}
+      &lt;PhotoPicker menuType='alert' multiple={false} photoSourceMenuOpened={photoSourceMenuOpened} cancel={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >togglePhotoSourceMenu(false)}</span> onReceivedPhotoResult={<span class="fstat-no" title="function not covered" >result </span>=&gt; <span class="cstat-no" title="statement not covered" >setPhotoBase64(result.base64)}</span>/&gt;
+    &lt;/View&gt;
+    
+  )
+}
+ 
+<span class="cstat-no" title="statement not covered" >export default RegisterImage;</span>
+ </pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 670 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterMeasurements.tsx.html

@@ -0,0 +1,670 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterMeasurements.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Auth/RegistrationSteps</a> RegisterMeasurements.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/26</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/10</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/25</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a>
+<a name='L126'></a><a href='#L126'>126</a>
+<a name='L127'></a><a href='#L127'>127</a>
+<a name='L128'></a><a href='#L128'>128</a>
+<a name='L129'></a><a href='#L129'>129</a>
+<a name='L130'></a><a href='#L130'>130</a>
+<a name='L131'></a><a href='#L131'>131</a>
+<a name='L132'></a><a href='#L132'>132</a>
+<a name='L133'></a><a href='#L133'>133</a>
+<a name='L134'></a><a href='#L134'>134</a>
+<a name='L135'></a><a href='#L135'>135</a>
+<a name='L136'></a><a href='#L136'>136</a>
+<a name='L137'></a><a href='#L137'>137</a>
+<a name='L138'></a><a href='#L138'>138</a>
+<a name='L139'></a><a href='#L139'>139</a>
+<a name='L140'></a><a href='#L140'>140</a>
+<a name='L141'></a><a href='#L141'>141</a>
+<a name='L142'></a><a href='#L142'>142</a>
+<a name='L143'></a><a href='#L143'>143</a>
+<a name='L144'></a><a href='#L144'>144</a>
+<a name='L145'></a><a href='#L145'>145</a>
+<a name='L146'></a><a href='#L146'>146</a>
+<a name='L147'></a><a href='#L147'>147</a>
+<a name='L148'></a><a href='#L148'>148</a>
+<a name='L149'></a><a href='#L149'>149</a>
+<a name='L150'></a><a href='#L150'>150</a>
+<a name='L151'></a><a href='#L151'>151</a>
+<a name='L152'></a><a href='#L152'>152</a>
+<a name='L153'></a><a href='#L153'>153</a>
+<a name='L154'></a><a href='#L154'>154</a>
+<a name='L155'></a><a href='#L155'>155</a>
+<a name='L156'></a><a href='#L156'>156</a>
+<a name='L157'></a><a href='#L157'>157</a>
+<a name='L158'></a><a href='#L158'>158</a>
+<a name='L159'></a><a href='#L159'>159</a>
+<a name='L160'></a><a href='#L160'>160</a>
+<a name='L161'></a><a href='#L161'>161</a>
+<a name='L162'></a><a href='#L162'>162</a>
+<a name='L163'></a><a href='#L163'>163</a>
+<a name='L164'></a><a href='#L164'>164</a>
+<a name='L165'></a><a href='#L165'>165</a>
+<a name='L166'></a><a href='#L166'>166</a>
+<a name='L167'></a><a href='#L167'>167</a>
+<a name='L168'></a><a href='#L168'>168</a>
+<a name='L169'></a><a href='#L169'>169</a>
+<a name='L170'></a><a href='#L170'>170</a>
+<a name='L171'></a><a href='#L171'>171</a>
+<a name='L172'></a><a href='#L172'>172</a>
+<a name='L173'></a><a href='#L173'>173</a>
+<a name='L174'></a><a href='#L174'>174</a>
+<a name='L175'></a><a href='#L175'>175</a>
+<a name='L176'></a><a href='#L176'>176</a>
+<a name='L177'></a><a href='#L177'>177</a>
+<a name='L178'></a><a href='#L178'>178</a>
+<a name='L179'></a><a href='#L179'>179</a>
+<a name='L180'></a><a href='#L180'>180</a>
+<a name='L181'></a><a href='#L181'>181</a>
+<a name='L182'></a><a href='#L182'>182</a>
+<a name='L183'></a><a href='#L183'>183</a>
+<a name='L184'></a><a href='#L184'>184</a>
+<a name='L185'></a><a href='#L185'>185</a>
+<a name='L186'></a><a href='#L186'>186</a>
+<a name='L187'></a><a href='#L187'>187</a>
+<a name='L188'></a><a href='#L188'>188</a>
+<a name='L189'></a><a href='#L189'>189</a>
+<a name='L190'></a><a href='#L190'>190</a>
+<a name='L191'></a><a href='#L191'>191</a>
+<a name='L192'></a><a href='#L192'>192</a>
+<a name='L193'></a><a href='#L193'>193</a>
+<a name='L194'></a><a href='#L194'>194</a>
+<a name='L195'></a><a href='#L195'>195</a>
+<a name='L196'></a><a href='#L196'>196</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { Formik } from 'formik';</span>
+<span class="cstat-no" title="statement not covered" >import React, { useState } from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { Dimensions, StyleSheet, TextInput, View } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import 'react-native-get-random-values';</span>
+<span class="cstat-no" title="statement not covered" >import { RadioButton, Text } from 'react-native-paper';</span>
+<span class="cstat-no" title="statement not covered" >import 'react-native-vector-icons';</span>
+<span class="cstat-no" title="statement not covered" >import * as Yup from 'yup';</span>
+<span class="cstat-no" title="statement not covered" >import { PrimaryButton, SecondaryButton } from '../../Buttons';</span>
+import { RegisterStepProps } from '../RegisterMain';
+&nbsp;
+export interface RegisterMeasurementValues {
+  sagitta: boolean,
+  height: string,
+  weight: string,
+}
+&nbsp;
+/** A yup form validation object for the measurement values */
+const credsSchema = <span class="cstat-no" title="statement not covered" >Yup.object({</span>
+  height: Yup.number().required("You must enter a height."),
+  weight: Yup.number().required("You must enter a weight."),
+})
+&nbsp;
+/**
+ * This component displays a form for the new user's sagitta usage, height, and weight 
+ */
+const RegisterMeasurements: React.FC&lt;RegisterStepProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>changeStep, setFormValues, formValues}) =&gt; {</span>
+  /**
+ * The initial measurement values are set to the current height and weight values of the parent form data object
+ */
+  const initialValues: RegisterMeasurementValues = <span class="cstat-no" title="statement not covered" >{sagitta: false, height: formValues.height, weight: formValues.weight};<span class="cstat-no" title="statement not covered" ></span>''</span>
+  /**
+   * A flag that maps to whether or not the user is using a sagitta
+   */
+  const [sagitta, setSagitta] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false)</span>
+&nbsp;
+  /**
+   * Reverses back to the password step
+   */
+  const back = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    changeStep(2, "Next, we'll have you set a password.")</span>
+  }
+&nbsp;
+  /**
+   * Advances to the image step
+   */
+  const next = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>(newFormValues: RegisterMeasurementValues) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    setFormValues({...formValues, height: newFormValues.height, weight: newFormValues.weight})</span>
+<span class="cstat-no" title="statement not covered" >    changeStep(4, "Lastly, pick a photo you'd like everyone to get to know you by.")</span>
+  }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  return (  </span>
+      &lt;View&gt;
+        &lt;View style={styles.sagittaCheck}&gt;
+          &lt;RadioButton uncheckedColor="white" color="white" value="yes" status={ sagitta ? 'checked' : 'unchecked' } onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >setSagitta(true)}</span> /&gt;
+          &lt;Text style={styles.radioLabel}&gt;Yes&lt;/Text&gt;
+          &lt;RadioButton uncheckedColor="white" color="white" value="no" status={ !sagitta ? 'checked' : 'unchecked' } onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >setSagitta(false)}</span> /&gt;
+          &lt;Text style={styles.radioLabel}&gt;No&lt;/Text&gt;
+        &lt;/View&gt;
+      { sagitta ?
+      &lt;Formik
+        initialValues={initialValues}
+        validationSchema={credsSchema}
+        enableReinitialize={true}
+        onSubmit={<span class="fstat-no" title="function not covered" >values </span>=&gt; <span class="cstat-no" title="statement not covered" >next(values)}</span>&gt;
+        {<span class="fstat-no" title="function not covered" >({</span> handleChange, handleBlur, handleSubmit, values, errors }) =&gt; (
+<span class="cstat-no" title="statement not covered" >          &lt;View style={{margin: 20}}&gt;</span>
+              &lt;TextInput 
+                style={styles.textInput}
+                placeholder="Height" 
+                keyboardType="numeric"
+                value={values.height}
+                onChangeText={handleChange('height')}
+                onBlur={handleBlur('height')} /&gt;
+              {errors.height? &lt;Text style={styles.errorText}&gt;{errors.height}&lt;/Text&gt; : null}
+              &lt;TextInput 
+                style={styles.textInput}
+                placeholder="Weight" 
+                value={values.weight}
+                onChangeText={handleChange('weight')} 
+                onBlur={handleBlur('weight')} /&gt;
+              {errors.weight? &lt;Text style={styles.errorText}&gt;{errors.weight}&lt;/Text&gt; : null}
+              &lt;PrimaryButton style={{marginTop: 30}} onPress={handleSubmit as any} text="Next"/&gt;
+              &lt;SecondaryButton onPress={back} text="Back"/&gt;
+          &lt;/View&gt;
+        )}
+        &lt;/Formik&gt; : 
+        &lt;&gt;
+        &lt;PrimaryButton style={{marginTop: 30}} onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >next({sagitta: false, height: '', weight: ''})}</span> text="Next"/&gt;
+        &lt;SecondaryButton onPress={back} text="Back"/&gt;
+        &lt;/&gt; }
+      &lt;/View&gt;
+  )
+}
+&nbsp;
+const styles = <span class="cstat-no" title="statement not covered" >StyleSheet.create({</span>
+  container: {
+    backgroundColor: 'transparent',
+    
+    position: 'absolute',
+    width: Dimensions.get('window').width,
+    height: Dimensions.get('window').height,
+    flex: 1,
+    flexDirection: 'column',
+    resizeMode: 'cover',
+  },
+&nbsp;
+  brandContainer: {
+    marginTop: 70,  
+    height: 120,
+    marginLeft: 25,
+    flexDirection: 'column',
+    justifyContent: 'space-evenly'
+  },
+&nbsp;
+  title: {
+    
+    color: 'white',
+    fontSize: 20
+  },
+&nbsp;
+  sagittaCheck: {
+    flexDirection: 'row',
+    margin: 20
+  },
+&nbsp;
+  radioLabel: {
+    marginTop: 7, marginRight: 20, color: 'white'
+  },
+&nbsp;
+  subtitle: {
+      
+      color: 'white',
+      fontSize: 15,
+      marginHorizontal: 20,
+      marginTop: 20
+  },
+&nbsp;
+  textContainer: { 
+    marginHorizontal: 20,
+    marginBottom: 30,
+    borderRadius: 50,
+  },
+&nbsp;
+  textInput: {
+    marginVertical: 7,
+    paddingLeft: 30,
+    borderRadius: 50,
+    overflow: 'hidden',
+    backgroundColor: 'white',
+    height: 50
+  },
+&nbsp;
+  errorText: {
+    alignSelf: 'flex-end',
+    color: 'red',
+    fontSize: 15
+  },
+&nbsp;
+  errorInput: {
+    borderWidth: 2,
+    borderColor: 'red'
+  },
+&nbsp;
+  nextBtn: {
+    marginHorizontal: 20,
+&nbsp;
+    borderRadius: 50,
+    justifyContent: 'center',
+    backgroundColor: '#df3f3f',
+    margin: 5,
+    height: 50,
+    alignItems: 'center'
+  },
+&nbsp;
+  backBtn: {
+    marginHorizontal: 20,
+    marginBottom: 10,
+    borderRadius: 50,
+    borderColor: 'white',
+    borderWidth: 2,
+    justifyContent: 'center',
+    backgroundColor: 'transparent',
+    margin: 5,
+    height: 50,
+    alignItems: 'center'
+  },
+})
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default RegisterMeasurements;</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 391 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterPassword.tsx.html

@@ -0,0 +1,391 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth/RegistrationSteps/RegisterPassword.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Auth/RegistrationSteps</a> RegisterPassword.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/19</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/5</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/19</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { Formik } from 'formik';</span>
+<span class="cstat-no" title="statement not covered" >import React from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { StyleSheet, TextInput, View } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import 'react-native-get-random-values';</span>
+<span class="cstat-no" title="statement not covered" >import { Text } from 'react-native-paper';</span>
+<span class="cstat-no" title="statement not covered" >import { passwordSchema } from '../../../utils/RegistrationUtils';</span>
+<span class="cstat-no" title="statement not covered" >import { PrimaryButton, SecondaryButton } from '../../Buttons';</span>
+import { RegisterStepProps } from '../RegisterMain';
+&nbsp;
+export interface PasswordValues {
+  password: string;
+  confirmPassword: string;
+}
+&nbsp;
+const RegisterPassword: React.FC&lt;RegisterStepProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>changeStep, setFormValues, formValues}) =&gt; {</span>
+  /**
+ * The initial measurement values are set to the current password values of the parent form data object
+ */
+  const initialValues: PasswordValues = <span class="cstat-no" title="statement not covered" >{password: formValues.password, confirmPassword: formValues.confirmPassword};</span>
+&nbsp;
+  const next = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(n</span>ewFormValues: PasswordValues) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    setFormValues({...formValues, password: newFormValues.password, confirmPassword: newFormValues.confirmPassword});</span>
+<span class="cstat-no" title="statement not covered" >    changeStep(3, "Will you be using a Sagitta?");</span>
+  }
+  
+  const back = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    changeStep(1, "Let's start with some basic account information");</span>
+  }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  return (</span>
+        &lt;Formik
+          initialValues={initialValues}
+          validationSchema={passwordSchema}
+          enableReinitialize={true}
+          onSubmit={<span class="fstat-no" title="function not covered" >values </span>=&gt; <span class="cstat-no" title="statement not covered" >next(values)}</span>&gt;
+          {<span class="fstat-no" title="function not covered" >({</span> handleChange, handleBlur, handleSubmit, values, errors, touched }) =&gt; (
+<span class="cstat-no" title="statement not covered" >              &lt;View style={{margin: 20}}&gt;</span>
+                  &lt;TextInput 
+                    style={PasswordFormStyles.textInput}
+                    placeholder="Password" 
+                    secureTextEntry={true} 
+                    value={values.password}
+                    onChangeText={handleChange('password')}
+                    onBlur={handleBlur('password')} /&gt;
+                  {errors.password &amp;&amp; touched.password ? &lt;Text style={PasswordFormStyles.errorText}&gt;{errors.password}&lt;/Text&gt; : null}
+                  &lt;TextInput 
+                    style={PasswordFormStyles.textInput}
+                    placeholder="Confirm password"
+                    secureTextEntry={true} 
+                    value={values.confirmPassword}
+                    onChangeText={handleChange('confirmPassword')} 
+                    onBlur={handleBlur('confirmPassword')} /&gt;
+                  {errors.confirmPassword &amp;&amp; touched.confirmPassword ? &lt;Text style={PasswordFormStyles.errorText}&gt;{errors.confirmPassword}&lt;/Text&gt; : null}
+                  &lt;PrimaryButton style={{marginTop: 30}} onPress={handleSubmit as any} text="Next"/&gt;
+                  &lt;SecondaryButton onPress={back} text="Back"/&gt;
+              &lt;/View&gt;
+            )}
+      &lt;/Formik&gt;
+  )
+}
+&nbsp;
+export const <span class="cstat-no" title="statement not covered" >PasswordFormStyles = StyleSheet.create({backBtn: {</span>
+    marginHorizontal: 20,
+    marginBottom: 10,
+    borderRadius: 50,
+    borderColor: 'white',
+    borderWidth: 2,
+    justifyContent: 'center',
+    backgroundColor: 'transparent',
+    margin: 5,
+    height: 50,
+    alignItems: 'center'
+  },
+    textInput: {
+      marginVertical: 7,
+      paddingLeft: 30,
+      borderRadius: 50,
+      overflow: 'hidden',
+      backgroundColor: 'white',
+      height: 50
+    },
+&nbsp;
+    errorText: {
+      alignSelf: 'flex-end',
+      color: 'red',
+      fontSize: 15
+    },
+&nbsp;
+    errorInput: {
+      borderWidth: 2,
+      borderColor: 'red'
+    },
+  })
+ 
+<span class="cstat-no" title="statement not covered" >export default RegisterPassword;</span>
+ </pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 161 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/RegistrationSteps/index.html

@@ -0,0 +1,161 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth/RegistrationSteps</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> atlas-mobile-ts/src/components/Auth/RegistrationSteps</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/112</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/36</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/25</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/110</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <div class="pad1">
+<table class="coverage-summary">
+<thead>
+<tr>
+   <th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
+   <th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
+   <th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
+   <th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
+   <th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
+   <th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
+   <th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
+</tr>
+</thead>
+<tbody><tr>
+	<td class="file low" data-value="RegisterCredential.tsx"><a href="RegisterCredential.tsx.html">RegisterCredential.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="19" class="abs low">0/19</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="8" class="abs low">0/8</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="4" class="abs low">0/4</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="19" class="abs low">0/19</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="RegisterImage.tsx"><a href="RegisterImage.tsx.html">RegisterImage.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="48" class="abs low">0/48</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="10" class="abs low">0/10</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="8" class="abs low">0/8</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="47" class="abs low">0/47</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="RegisterMeasurements.tsx"><a href="RegisterMeasurements.tsx.html">RegisterMeasurements.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="26" class="abs low">0/26</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="10" class="abs low">0/10</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="8" class="abs low">0/8</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="25" class="abs low">0/25</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="RegisterPassword.tsx"><a href="RegisterPassword.tsx.html">RegisterPassword.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="19" class="abs low">0/19</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="8" class="abs low">0/8</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="5" class="abs low">0/5</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="19" class="abs low">0/19</td>
+	</tr>
+
+</tbody>
+</table>
+</div>
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 146 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Auth/index.html

@@ -0,0 +1,146 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Auth</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../index.html">All files</a> atlas-mobile-ts/src/components/Auth</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/80</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/20</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/15</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/78</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <div class="pad1">
+<table class="coverage-summary">
+<thead>
+<tr>
+   <th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
+   <th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
+   <th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
+   <th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
+   <th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
+   <th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
+   <th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
+</tr>
+</thead>
+<tbody><tr>
+	<td class="file low" data-value="AuthLayout.tsx"><a href="AuthLayout.tsx.html">AuthLayout.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="8" class="abs low">0/8</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="2" class="abs low">0/2</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="2" class="abs low">0/2</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="8" class="abs low">0/8</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="Intro.tsx"><a href="Intro.tsx.html">Intro.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="37" class="abs low">0/37</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="5" class="abs low">0/5</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="6" class="abs low">0/6</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="36" class="abs low">0/36</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="RegisterMain.tsx"><a href="RegisterMain.tsx.html">RegisterMain.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="35" class="abs low">0/35</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="13" class="abs low">0/13</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="7" class="abs low">0/7</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="34" class="abs low">0/34</td>
+	</tr>
+
+</tbody>
+</table>
+</div>
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../sorter.js"></script>
+        <script src="../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 142 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Badge.tsx.html

@@ -0,0 +1,142 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Badge.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../prettify.css" />
+    <link rel="stylesheet" href="../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components</a> Badge.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/6</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/1</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/6</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import React, { memo } from "react"</span>
+<span class="cstat-no" title="statement not covered" >import { View, Text, ViewStyle } from "react-native"</span>
+<span class="cstat-no" title="statement not covered" >import { colors } from "../utils/GlobalUtils"</span>
+&nbsp;
+const Badge: React.FC&lt;{value: number, positioning: {top?: number, left?: number, right?: number, bottom?: number}}&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>value, positioning}) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;View style={[positioning, {position: 'absolute', backgroundColor: 'white', paddingVertical: 2, paddingHorizontal: 5, borderRadius: 50}]}&gt;
+            &lt;Text style={{fontSize: 10, color: colors.red}}&gt;{value}&lt;/Text&gt;
+        &lt;/View&gt;
+    )
+}
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default memo(Badge)</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../sorter.js"></script>
+        <script src="../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 310 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Buttons.tsx.html

@@ -0,0 +1,310 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Buttons.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../prettify.css" />
+    <link rel="stylesheet" href="../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components</a> Buttons.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/14</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/3</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/11</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { FontAwesome } from "@expo/vector-icons";</span>
+<span class="cstat-no" title="statement not covered" >import React from "react";</span>
+<span class="cstat-no" title="statement not covered" >import { StyleProp, StyleSheet, Text, TouchableOpacity, ViewStyle } from "react-native";</span>
+<span class="cstat-no" title="statement not covered" >import { colors, testTag } from "../utils/GlobalUtils";</span>
+&nbsp;
+interface ButtonProps {
+    onPress: () =&gt; void,
+    style?: StyleProp&lt;ViewStyle&gt;
+    accessibilityLabel?: string,
+}
+&nbsp;
+interface TextButtonProps extends ButtonProps {
+    text: string,
+}
+&nbsp;
+interface IconButtonProps extends ButtonProps {
+    icon: string,
+    color: string,
+    size: number
+}
+&nbsp;
+/**
+ * A general component that represents a primary button.
+ * @component 
+ */
+export const <span class="cstat-no" title="statement not covered" >PrimaryButton: React.FC&lt;TextButtonProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>{</span>text, onPress, style, accessibilityLabel}) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    return(</span>
+    &lt;TouchableOpacity {...testTag(accessibilityLabel)} style={[styles.btn, styles.primaryBtn, style]} onPress={onPress}&gt;
+        &lt;Text style={{color: 'white'}}&gt;{text}&lt;/Text&gt;
+    &lt;/TouchableOpacity&gt;)
+}
+&nbsp;
+/**
+ * A general component that represents a secondary button.
+ * @component 
+ */
+export const <span class="cstat-no" title="statement not covered" >SecondaryButton: React.FC&lt;TextButtonProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>{</span>text, onPress, style, accessibilityLabel}) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    return(</span>
+    &lt;TouchableOpacity {...testTag(accessibilityLabel)} style={[styles.btn, styles.secondaryBtn, style]} onPress={onPress}&gt;
+        &lt;Text style={{color: 'white'}}&gt;{text}&lt;/Text&gt;
+    &lt;/TouchableOpacity&gt;)
+}
+&nbsp;
+export const <span class="cstat-no" title="statement not covered" >IconButton: React.FC&lt;IconButtonProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>{</span>onPress, style, size, color, icon, accessibilityLabel}) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    return(</span>
+        &lt;TouchableOpacity {...testTag(accessibilityLabel)} style={style} onPress={onPress}&gt;
+            &lt;FontAwesome size={size} color={color} name={icon as any}/&gt;
+        &lt;/TouchableOpacity&gt;
+    )
+}
+&nbsp;
+const styles = <span class="cstat-no" title="statement not covered" >StyleSheet.create({</span>
+    btn: {
+        borderRadius: 50,
+        width: '100%',
+        justifyContent: 'center',
+        alignItems: 'center',
+        height: 60,
+        marginBottom: 20,
+    },
+    primaryBtn: {
+        backgroundColor: colors.red,
+    },
+    secondaryBtn: {
+        borderColor: 'white',
+        borderWidth: 2,
+        backgroundColor: 'transparent',
+    }
+})</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../sorter.js"></script>
+        <script src="../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 265 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Feed/Feed.tsx.html

@@ -0,0 +1,265 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Feed/Feed.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Feed</a> Feed.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/17</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/10</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/6</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/16</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { FontAwesome } from "@expo/vector-icons"</span>
+<span class="cstat-no" title="statement not covered" >import React from "react"</span>
+<span class="cstat-no" title="statement not covered" >import { ListRenderItem, Text, View } from "react-native"</span>
+<span class="cstat-no" title="statement not covered" >import { FlatList, TouchableOpacity } from "react-native-gesture-handler"</span>
+<span class="cstat-no" title="statement not covered" >import { useProfile, UserNotification } from "../../hooks/useProfile"</span>
+<span class="cstat-no" title="statement not covered" >import { authStore } from "../../libs/auth/AuthStore"</span>
+&nbsp;
+/**
+ * This component displays all the user's notifications sorted by most recent
+ * @param 
+ * @returns 
+ */
+export const <span class="cstat-no" title="statement not covered" >Feed: React.FC&lt;{notifications: UserNotification[], handleNotifInteraction}&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>{</span>notifications, handleNotifInteraction}) =&gt; {</span>
+    // bring in the deleteNotification function from the useProfile hook
+    const {deleteNotification} = <span class="cstat-no" title="statement not covered" >useProfile(authStore.userId)</span>
+&nbsp;
+    /**
+     * Flatlist item render function for notifcations. Displays the notification's title and a delete button. 
+     * Renders the text bold if the notification hasn't been pressed yet 
+    */
+    const renderNotification: ListRenderItem&lt;UserNotification&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>item, index}) =&gt; {</span>
+        const notifData = <span class="cstat-no" title="statement not covered" >JSON.parse(item.data.replace(/'/g, '"'))</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >        return (</span>
+            &lt;View style={{flexDirection: 'row', alignItems: 'center', justifyContent: 'flex-start', borderBottomWidth: 1, borderColor: 'lightgray'}}&gt;
+                &lt;TouchableOpacity style={{flex: 10, padding: 20}} onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >handleNotifInteraction(notifData)}</span>&gt;
+                    &lt;Text style={{paddingRight: 110, fontWeight: item.read ? 'normal' : 'bold', color: item.read ? 'gray' : 'black'}} &gt; 
+                        {notifData?.notif_type == 'landmark-like' ? &lt;FontAwesome name="thumbs-up" color={item.read ? "darkgray" : "black"} size={20} /&gt; : null}
+                        {"   -   "}
+                        {item.title}
+                    &lt;/Text&gt;
+                &lt;/TouchableOpacity&gt;
+                &lt;TouchableOpacity onPress={<span class="fstat-no" title="function not covered" >async </span>() =&gt; <span class="cstat-no" title="statement not covered" >deleteNotification(item.id)}</span>&gt;
+                    &lt;FontAwesome style={{textAlign: 'center', padding: 15}} name="trash" color='red' size={20} /&gt;
+                &lt;/TouchableOpacity&gt;
+            &lt;/View&gt;
+        );
+    }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;&gt;
+        {notifications?.length &gt; 0 ?
+        &lt;FlatList
+            nestedScrollEnabled={true}
+            keyExtractor={<span class="fstat-no" title="function not covered" >i </span>=&gt; <span class="cstat-no" title="statement not covered" >i.id}</span>
+            data={notifications} 
+            renderItem={renderNotification}
+            getItemLayout={<span class="fstat-no" title="function not covered" >(d</span>ata, index) =&gt; (<span class="cstat-no" title="statement not covered" >{length: notifications.length, offset: notifications.length * index, index})</span>}/&gt; :
+        &lt;View style={{ alignItems: 'center', marginTop: 40}}&gt;
+            &lt;Text style={{fontSize: 17}}&gt;You have no notifications&lt;/Text&gt;
+        &lt;/View&gt;}
+        &lt;/&gt;
+    )
+}</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../sorter.js"></script>
+        <script src="../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 116 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Feed/index.html

@@ -0,0 +1,116 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Feed</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../index.html">All files</a> atlas-mobile-ts/src/components/Feed</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/17</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/10</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/6</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/16</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <div class="pad1">
+<table class="coverage-summary">
+<thead>
+<tr>
+   <th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
+   <th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
+   <th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
+   <th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
+   <th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
+   <th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
+   <th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
+</tr>
+</thead>
+<tbody><tr>
+	<td class="file low" data-value="Feed.tsx"><a href="Feed.tsx.html">Feed.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="17" class="abs low">0/17</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="10" class="abs low">0/10</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="6" class="abs low">0/6</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="16" class="abs low">0/16</td>
+	</tr>
+
+</tbody>
+</table>
+</div>
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../sorter.js"></script>
+        <script src="../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 361 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Home.tsx.html

@@ -0,0 +1,361 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Home.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../prettify.css" />
+    <link rel="stylesheet" href="../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components</a> Home.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/14</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/5</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/13</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { FontAwesome } from "@expo/vector-icons";</span>
+<span class="cstat-no" title="statement not covered" >import { format, parseISO } from 'date-fns';</span>
+<span class="cstat-no" title="statement not covered" >import React, { memo } from "react";</span>
+<span class="cstat-no" title="statement not covered" >import { SafeAreaView, Text, TouchableOpacity, View } from "react-native";</span>
+import { LMComment } from "../hooks/useComments";
+import { Landmark } from "../hooks/useLandmarks";
+<span class="cstat-no" title="statement not covered" >import { authStore } from "../libs/auth/AuthStore";</span>
+&nbsp;
+/**
+ * Props for the {@link Comment} component.
+ */
+export interface CommentProps {
+    /**
+     * The [comment]{@link LMComment} object being displayed by the {@link Comment} component.
+     */
+    comment: LMComment
+    /**
+     * Whether or not this comment is selected and should be highlighted
+     */
+    selected: boolean
+    focusComment: (id: string) =&gt; void
+    startEditingComment: (comment: LMComment) =&gt; void
+    deleteComment: (id: string) =&gt; void
+}
+&nbsp;
+/**
+ * Component that displays a {@link LMComment} object in a clean format.
+ * @component
+ */
+export const <span class="cstat-no" title="statement not covered" >Comment: React.FC&lt;CommentProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>{</span>comment, selected, focusComment: selectComment, startEditingComment: startEditingComment, deleteComment}) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;TouchableOpacity style={[{paddingHorizontal: 10}, selected ? {backgroundColor: '#E8E8E8'}: null]} onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >selectComment(comment.id)}</span>&gt;
+            &lt;View style={{paddingTop: 10,  flexDirection: 'row', justifyContent: 'space-between'}}&gt;
+                &lt;Text style={{fontWeight: 'bold'}}&gt;{comment.poster_name}:&lt;/Text&gt;
+                &lt;Text style={{fontSize: 12, color: 'gray'}}&gt;{format(parseISO(comment.timestamp.toString()), "MMMM do, yyyy h:mma")}&lt;/Text&gt;
+            &lt;/View&gt;
+            &lt;View style={{marginVertical: 10}}&gt;
+                &lt;Text style={{paddingBottom: 10}} &gt;{comment.content}&lt;/Text&gt;
+                &lt;View style={{flexDirection: 'row', alignSelf: 'flex-end'}}&gt;
+                    {comment.edited ? &lt;Text style={{color: 'grey', alignSelf: 'flex-end'}}&gt;Edited&lt;/Text&gt; : null}
+                    {selected &amp;&amp; comment.poster == authStore.userId ?
+                    &lt;View style={{marginTop: 10, flexDirection: 'row', alignSelf: 'flex-end'}}&gt;
+                        &lt;FontAwesome size={25} name="edit" style={{paddingTop: 1, marginLeft: 20}} onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >startEditingComment(comment)}</span>/&gt;
+                        &lt;FontAwesome color="red" size={25} style={{marginLeft: 15}} name="trash" onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >deleteComment(comment.id)}</span>/&gt;
+                    &lt;/View&gt; : null}
+                &lt;/View&gt;
+            &lt;/View&gt;
+        &lt;/TouchableOpacity&gt;
+    )}
+&nbsp;
+/**
+ * Props for the {@link LandmarkDetails} component.
+ */
+export interface LandmarkDetailsProps {
+    /**
+     * The {@link Landmark} object being displayed/edited in the {@link LandmarkDetails} modal. 
+     */
+    landmark: Landmark | undefined
+    /**
+     * A callback passed from the parent {@link Map} that toggles the visibility of the {@link LandmarkDetails} modal.
+     */
+    setVisible: (state: boolean) =&gt; void;
+    /**
+     * A callback passed from the parent {@link Map} that toggles the ability to edit the {@link Landmark} in {@link LandmarkDetails} modal.
+     */
+    setEditing: (state: boolean) =&gt; void;
+    /**
+     * A flag that determines whether the properties of the {@link Landmark} displayed in the {@link LandmarkDetails} modal can be edited
+     */
+    editingEnabled: boolean
+}
+&nbsp;
+/**
+ * Component that renders the details of a selected {@link Landmark} and allows the user to edit those details. Contained within a [react-native-modal]{@link https://github.com/react-native-modal/react-native-modal}.
+ * @component
+ * @category Map
+ */
+const Home: React.FC = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;SafeAreaView &gt;
+           &lt;Text&gt;Home placeholder&lt;/Text&gt;
+        &lt;/SafeAreaView&gt;
+    )
+}
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default memo(Home);</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../sorter.js"></script>
+        <script src="../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 202 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/LandmarkPin.tsx.html

@@ -0,0 +1,202 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/LandmarkPin.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Map</a> LandmarkPin.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import React from "react";</span>
+<span class="cstat-no" title="statement not covered" >import { Image } from "react-native";</span>
+<span class="cstat-no" title="statement not covered" >import { Marker } from "react-native-maps";</span>
+<span class="cstat-no" title="statement not covered" >import { lmTypes } from "../../utils/GlobalUtils";</span>
+import { Landmark } from "../../hooks/useLandmarks";
+&nbsp;
+/**
+ * Props for the {@link LandmarkPin} component
+ */
+export interface LandmarkPinProps {
+    /**The landmark object being displayed. */
+    landmark: Landmark
+    /**The handler passed down from {@link Map} that opens up the {@link LandmarkDetails} modal to display the landmark's properties. */
+    focusLandmark: (landmark: Landmark) =&gt; void
+}
+&nbsp;
+/**
+ * Component that renders landmarks with their proper icon on the {@link Map}.
+ * @category Map
+ * @component
+ */
+const LandmarkPin: React.FC&lt;LandmarkPinProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>landmark, focusLandmark}) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    return (</span>
+    &lt;Marker 
+        tracksViewChanges={false}
+        onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >focusLandmark(landmark)}</span>
+        key={landmark.id} 
+        coordinate={{latitude: landmark.latitude as number, longitude: landmark.longitude as number}} &gt;
+        { landmark.landmark_type ? &lt;Image style={{height: 35, width: 25}} source={lmTypes[landmark.landmark_type].image} /&gt; : null}
+    &lt;/Marker&gt; )
+}
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default LandmarkPin;</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../sorter.js"></script>
+        <script src="../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 1051 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/IndoorMap.tsx.html

@@ -0,0 +1,1051 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/MainMapComponent/IndoorMap.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Map/MainMapComponent</a> IndoorMap.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/88</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/21</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/25</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/86</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a>
+<a name='L126'></a><a href='#L126'>126</a>
+<a name='L127'></a><a href='#L127'>127</a>
+<a name='L128'></a><a href='#L128'>128</a>
+<a name='L129'></a><a href='#L129'>129</a>
+<a name='L130'></a><a href='#L130'>130</a>
+<a name='L131'></a><a href='#L131'>131</a>
+<a name='L132'></a><a href='#L132'>132</a>
+<a name='L133'></a><a href='#L133'>133</a>
+<a name='L134'></a><a href='#L134'>134</a>
+<a name='L135'></a><a href='#L135'>135</a>
+<a name='L136'></a><a href='#L136'>136</a>
+<a name='L137'></a><a href='#L137'>137</a>
+<a name='L138'></a><a href='#L138'>138</a>
+<a name='L139'></a><a href='#L139'>139</a>
+<a name='L140'></a><a href='#L140'>140</a>
+<a name='L141'></a><a href='#L141'>141</a>
+<a name='L142'></a><a href='#L142'>142</a>
+<a name='L143'></a><a href='#L143'>143</a>
+<a name='L144'></a><a href='#L144'>144</a>
+<a name='L145'></a><a href='#L145'>145</a>
+<a name='L146'></a><a href='#L146'>146</a>
+<a name='L147'></a><a href='#L147'>147</a>
+<a name='L148'></a><a href='#L148'>148</a>
+<a name='L149'></a><a href='#L149'>149</a>
+<a name='L150'></a><a href='#L150'>150</a>
+<a name='L151'></a><a href='#L151'>151</a>
+<a name='L152'></a><a href='#L152'>152</a>
+<a name='L153'></a><a href='#L153'>153</a>
+<a name='L154'></a><a href='#L154'>154</a>
+<a name='L155'></a><a href='#L155'>155</a>
+<a name='L156'></a><a href='#L156'>156</a>
+<a name='L157'></a><a href='#L157'>157</a>
+<a name='L158'></a><a href='#L158'>158</a>
+<a name='L159'></a><a href='#L159'>159</a>
+<a name='L160'></a><a href='#L160'>160</a>
+<a name='L161'></a><a href='#L161'>161</a>
+<a name='L162'></a><a href='#L162'>162</a>
+<a name='L163'></a><a href='#L163'>163</a>
+<a name='L164'></a><a href='#L164'>164</a>
+<a name='L165'></a><a href='#L165'>165</a>
+<a name='L166'></a><a href='#L166'>166</a>
+<a name='L167'></a><a href='#L167'>167</a>
+<a name='L168'></a><a href='#L168'>168</a>
+<a name='L169'></a><a href='#L169'>169</a>
+<a name='L170'></a><a href='#L170'>170</a>
+<a name='L171'></a><a href='#L171'>171</a>
+<a name='L172'></a><a href='#L172'>172</a>
+<a name='L173'></a><a href='#L173'>173</a>
+<a name='L174'></a><a href='#L174'>174</a>
+<a name='L175'></a><a href='#L175'>175</a>
+<a name='L176'></a><a href='#L176'>176</a>
+<a name='L177'></a><a href='#L177'>177</a>
+<a name='L178'></a><a href='#L178'>178</a>
+<a name='L179'></a><a href='#L179'>179</a>
+<a name='L180'></a><a href='#L180'>180</a>
+<a name='L181'></a><a href='#L181'>181</a>
+<a name='L182'></a><a href='#L182'>182</a>
+<a name='L183'></a><a href='#L183'>183</a>
+<a name='L184'></a><a href='#L184'>184</a>
+<a name='L185'></a><a href='#L185'>185</a>
+<a name='L186'></a><a href='#L186'>186</a>
+<a name='L187'></a><a href='#L187'>187</a>
+<a name='L188'></a><a href='#L188'>188</a>
+<a name='L189'></a><a href='#L189'>189</a>
+<a name='L190'></a><a href='#L190'>190</a>
+<a name='L191'></a><a href='#L191'>191</a>
+<a name='L192'></a><a href='#L192'>192</a>
+<a name='L193'></a><a href='#L193'>193</a>
+<a name='L194'></a><a href='#L194'>194</a>
+<a name='L195'></a><a href='#L195'>195</a>
+<a name='L196'></a><a href='#L196'>196</a>
+<a name='L197'></a><a href='#L197'>197</a>
+<a name='L198'></a><a href='#L198'>198</a>
+<a name='L199'></a><a href='#L199'>199</a>
+<a name='L200'></a><a href='#L200'>200</a>
+<a name='L201'></a><a href='#L201'>201</a>
+<a name='L202'></a><a href='#L202'>202</a>
+<a name='L203'></a><a href='#L203'>203</a>
+<a name='L204'></a><a href='#L204'>204</a>
+<a name='L205'></a><a href='#L205'>205</a>
+<a name='L206'></a><a href='#L206'>206</a>
+<a name='L207'></a><a href='#L207'>207</a>
+<a name='L208'></a><a href='#L208'>208</a>
+<a name='L209'></a><a href='#L209'>209</a>
+<a name='L210'></a><a href='#L210'>210</a>
+<a name='L211'></a><a href='#L211'>211</a>
+<a name='L212'></a><a href='#L212'>212</a>
+<a name='L213'></a><a href='#L213'>213</a>
+<a name='L214'></a><a href='#L214'>214</a>
+<a name='L215'></a><a href='#L215'>215</a>
+<a name='L216'></a><a href='#L216'>216</a>
+<a name='L217'></a><a href='#L217'>217</a>
+<a name='L218'></a><a href='#L218'>218</a>
+<a name='L219'></a><a href='#L219'>219</a>
+<a name='L220'></a><a href='#L220'>220</a>
+<a name='L221'></a><a href='#L221'>221</a>
+<a name='L222'></a><a href='#L222'>222</a>
+<a name='L223'></a><a href='#L223'>223</a>
+<a name='L224'></a><a href='#L224'>224</a>
+<a name='L225'></a><a href='#L225'>225</a>
+<a name='L226'></a><a href='#L226'>226</a>
+<a name='L227'></a><a href='#L227'>227</a>
+<a name='L228'></a><a href='#L228'>228</a>
+<a name='L229'></a><a href='#L229'>229</a>
+<a name='L230'></a><a href='#L230'>230</a>
+<a name='L231'></a><a href='#L231'>231</a>
+<a name='L232'></a><a href='#L232'>232</a>
+<a name='L233'></a><a href='#L233'>233</a>
+<a name='L234'></a><a href='#L234'>234</a>
+<a name='L235'></a><a href='#L235'>235</a>
+<a name='L236'></a><a href='#L236'>236</a>
+<a name='L237'></a><a href='#L237'>237</a>
+<a name='L238'></a><a href='#L238'>238</a>
+<a name='L239'></a><a href='#L239'>239</a>
+<a name='L240'></a><a href='#L240'>240</a>
+<a name='L241'></a><a href='#L241'>241</a>
+<a name='L242'></a><a href='#L242'>242</a>
+<a name='L243'></a><a href='#L243'>243</a>
+<a name='L244'></a><a href='#L244'>244</a>
+<a name='L245'></a><a href='#L245'>245</a>
+<a name='L246'></a><a href='#L246'>246</a>
+<a name='L247'></a><a href='#L247'>247</a>
+<a name='L248'></a><a href='#L248'>248</a>
+<a name='L249'></a><a href='#L249'>249</a>
+<a name='L250'></a><a href='#L250'>250</a>
+<a name='L251'></a><a href='#L251'>251</a>
+<a name='L252'></a><a href='#L252'>252</a>
+<a name='L253'></a><a href='#L253'>253</a>
+<a name='L254'></a><a href='#L254'>254</a>
+<a name='L255'></a><a href='#L255'>255</a>
+<a name='L256'></a><a href='#L256'>256</a>
+<a name='L257'></a><a href='#L257'>257</a>
+<a name='L258'></a><a href='#L258'>258</a>
+<a name='L259'></a><a href='#L259'>259</a>
+<a name='L260'></a><a href='#L260'>260</a>
+<a name='L261'></a><a href='#L261'>261</a>
+<a name='L262'></a><a href='#L262'>262</a>
+<a name='L263'></a><a href='#L263'>263</a>
+<a name='L264'></a><a href='#L264'>264</a>
+<a name='L265'></a><a href='#L265'>265</a>
+<a name='L266'></a><a href='#L266'>266</a>
+<a name='L267'></a><a href='#L267'>267</a>
+<a name='L268'></a><a href='#L268'>268</a>
+<a name='L269'></a><a href='#L269'>269</a>
+<a name='L270'></a><a href='#L270'>270</a>
+<a name='L271'></a><a href='#L271'>271</a>
+<a name='L272'></a><a href='#L272'>272</a>
+<a name='L273'></a><a href='#L273'>273</a>
+<a name='L274'></a><a href='#L274'>274</a>
+<a name='L275'></a><a href='#L275'>275</a>
+<a name='L276'></a><a href='#L276'>276</a>
+<a name='L277'></a><a href='#L277'>277</a>
+<a name='L278'></a><a href='#L278'>278</a>
+<a name='L279'></a><a href='#L279'>279</a>
+<a name='L280'></a><a href='#L280'>280</a>
+<a name='L281'></a><a href='#L281'>281</a>
+<a name='L282'></a><a href='#L282'>282</a>
+<a name='L283'></a><a href='#L283'>283</a>
+<a name='L284'></a><a href='#L284'>284</a>
+<a name='L285'></a><a href='#L285'>285</a>
+<a name='L286'></a><a href='#L286'>286</a>
+<a name='L287'></a><a href='#L287'>287</a>
+<a name='L288'></a><a href='#L288'>288</a>
+<a name='L289'></a><a href='#L289'>289</a>
+<a name='L290'></a><a href='#L290'>290</a>
+<a name='L291'></a><a href='#L291'>291</a>
+<a name='L292'></a><a href='#L292'>292</a>
+<a name='L293'></a><a href='#L293'>293</a>
+<a name='L294'></a><a href='#L294'>294</a>
+<a name='L295'></a><a href='#L295'>295</a>
+<a name='L296'></a><a href='#L296'>296</a>
+<a name='L297'></a><a href='#L297'>297</a>
+<a name='L298'></a><a href='#L298'>298</a>
+<a name='L299'></a><a href='#L299'>299</a>
+<a name='L300'></a><a href='#L300'>300</a>
+<a name='L301'></a><a href='#L301'>301</a>
+<a name='L302'></a><a href='#L302'>302</a>
+<a name='L303'></a><a href='#L303'>303</a>
+<a name='L304'></a><a href='#L304'>304</a>
+<a name='L305'></a><a href='#L305'>305</a>
+<a name='L306'></a><a href='#L306'>306</a>
+<a name='L307'></a><a href='#L307'>307</a>
+<a name='L308'></a><a href='#L308'>308</a>
+<a name='L309'></a><a href='#L309'>309</a>
+<a name='L310'></a><a href='#L310'>310</a>
+<a name='L311'></a><a href='#L311'>311</a>
+<a name='L312'></a><a href='#L312'>312</a>
+<a name='L313'></a><a href='#L313'>313</a>
+<a name='L314'></a><a href='#L314'>314</a>
+<a name='L315'></a><a href='#L315'>315</a>
+<a name='L316'></a><a href='#L316'>316</a>
+<a name='L317'></a><a href='#L317'>317</a>
+<a name='L318'></a><a href='#L318'>318</a>
+<a name='L319'></a><a href='#L319'>319</a>
+<a name='L320'></a><a href='#L320'>320</a>
+<a name='L321'></a><a href='#L321'>321</a>
+<a name='L322'></a><a href='#L322'>322</a>
+<a name='L323'></a><a href='#L323'>323</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import React, { useState, useEffect, Children } from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { View, Text, StatusBar, StyleSheet, Dimensions, Button, ActivityIndicator, Alert, Modal } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import { Svg, Defs, Rect, Mask, Circle, Marker, Path, Polyline, Image } from 'react-native-svg';</span>
+<span class="cstat-no" title="statement not covered" >import { RadioButton } from 'react-native-paper';</span>
+<span class="cstat-no" title="statement not covered" >import { Picker } from '@react-native-picker/picker';</span>
+<span class="cstat-no" title="statement not covered" >import ReactNativeZoomableView from '@openspacelabs/react-native-zoomable-view/src/ReactNativeZoomableView';</span>
+<span class="cstat-no" title="statement not covered" >import Spinner from 'react-native-spinkit'</span>
+<span class="cstat-no" title="statement not covered" >import { colors } from "../../../utils/GlobalUtils";</span>
+import { MapStackNavigationProp } from "../../../navigation/MapNavigator"
+<span class="cstat-no" title="statement not covered" >import CustomModal from './modal';</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import BasementC from './images/BasementC.svg';</span>
+<span class="cstat-no" title="statement not covered" >import FirstFloorC from './images/FirstFloorC.svg'</span>
+<span class="cstat-no" title="statement not covered" >import SecondFloorC from './images/SecondFloorC.svg'</span>
+<span class="cstat-no" title="statement not covered" >import ThirdFloorC from './images/ThirdFloorC.svg'</span>
+<span class="cstat-no" title="statement not covered" >import FourthFloorC from './images/FourthFloorC.svg'</span>
+<span class="cstat-no" title="statement not covered" >import FifthFloorC from './images/FifthFloorC.svg'</span>
+import { Landmark } from '../../../hooks/useLandmarks';
+&nbsp;
+&nbsp;
+interface IndoorMapProps {
+  navigation: MapStackNavigationProp
+  landmarks: Landmark[]
+  promptAddLandmark: (longitude?: number, latitude?: number) =&gt; void
+  focusLandmark: (landmark: Landmark) =&gt; void
+  applyFilter: (landmarks: Landmark[]) =&gt; Landmark[]
+}
+&nbsp;
+interface IndoorMarker {
+  key: number,
+  coordx: number,
+  coordy: number,
+  description: string,
+  landmark: string
+}
+&nbsp;
+const IndoorMap: React.FC&lt;IndoorMapProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>navigation, landmarks, promptAddLandmark, focusLandmark, applyFilter}) =&gt; {</span>
+  const [floor, setFloor] = <span class="cstat-no" title="statement not covered" >useState(0);</span>
+  const [showME, setShowME] = <span class="cstat-no" title="statement not covered" >useState(false);</span>
+  const [showDots, setShowDots] = <span class="cstat-no" title="statement not covered" >useState(false);</span>
+  const [showAddedDot, setShowAddedDot] = <span class="cstat-no" title="statement not covered" >useState(false)</span>
+  const [showModal2, setShowModal] = <span class="cstat-no" title="statement not covered" >useState(false)</span>
+  const [checked, setChecked] = <span class="cstat-no" title="statement not covered" >React.useState('information');</span>
+  const [coords, setCoords] = <span class="cstat-no" title="statement not covered" >useState([0, 0])</span>
+  const [SVGdim, setSVGdim] = <span class="cstat-no" title="statement not covered" >useState([1, 1])</span>
+  const [firstTime, setfirstTime] = <span class="cstat-no" title="statement not covered" >useState(true)</span>
+&nbsp;
+&nbsp;
+  // Main issue is that I need to first load the page to retrieve dimensions of SVG, THEN I can actually use the 
+  // real proper coordinate values. Before, I used raw numbers, which is why it could load immediately. However here,
+  // my state starts with ratio values (0.5 , 0.25, etc), retrieves SVG coordinates, then finally gets the real positioning.
+&nbsp;
+&nbsp;
+  let indoorCircles: IndoorMarker[][] = <span class="cstat-no" title="statement not covered" >[ //first to fifth floor, last element is basement</span>
+    [{ key: 1, coordx: 0.5 * SVGdim[0], coordy: 0.5 * SVGdim[1], description: "nothing yet1", landmark: "stairs" },
+    { key: 2, coordx: 0.25 * SVGdim[0], coordy: 0.25 * SVGdim[1], description: "nothing yet2", landmark: "stairs" }],
+&nbsp;
+    [{ key: 3, coordx: 0.35 * SVGdim[0], coordy: 0.35 * SVGdim[1], description: "nothing yet1", landmark: "stairs" },
+    { key: 4, coordx: 0.15 * SVGdim[0], coordy: 0.15 * SVGdim[1], description: "nothing yet2", landmark: "power" }],
+&nbsp;
+    [{ key: 5, coordx: 0.5 * SVGdim[0], coordy: 0.5 * SVGdim[1], description: "nothing yet1", landmark: "stairs" },
+    { key: 6, coordx: 0.25 * SVGdim[0], coordy: 0.25 * SVGdim[1], description: "nothing yet2", landmark: "stairs" }],
+&nbsp;
+    [{ key: 7, coordx: 0.35 * SVGdim[0], coordy: 0.35 * SVGdim[1], description: "nothing yet1", landmark: "power" },
+    { key: 8, coordx: 0.15 * SVGdim[0], coordy: 0.15 * SVGdim[1], description: "nothing yet2", landmark: "power" }],
+&nbsp;
+    [{ key: 9, coordx: 0.5 * SVGdim[0], coordy: 0.5 * SVGdim[1], description: "nothing yet1", landmark: "stairs" },
+    { key: 10, coordx: 0.25 * SVGdim[0], coordy: 0.25 * SVGdim[1], description: "nothing yet2", landmark: "stairs" }],
+&nbsp;
+    [{ key: 11, coordx: 0.35 * SVGdim[0], coordy: 0.35 * SVGdim[1], description: "nothing yet1", landmark: "power" },
+    { key: 12, coordx: 0.15 * SVGdim[0], coordy: 0.15 * SVGdim[1], description: "nothing yet2", landmark: "stairs" }],
+  ]
+&nbsp;
+  const [indoorMarkers, setIndoorMarkers] = <span class="cstat-no" title="statement not covered" >useState([ //first to fifth floor, last element is basement</span>
+    [{ key: 1, coordx: 0.5 * SVGdim[0], coordy: 0.5 * SVGdim[1], description: "nothing yet1", landmark: "stairs" },
+    { key: 2, coordx: 0.25 * SVGdim[0], coordy: 0.25 * SVGdim[1], description: "nothing yet2", landmark: "power" }],
+&nbsp;
+    [{ key: 3, coordx: 0.35 * SVGdim[0], coordy: 0.35 * SVGdim[1], description: "nothing yet1", landmark: "stairs" },
+    { key: 4, coordx: 0.15 * SVGdim[0], coordy: 0.15 * SVGdim[1], description: "nothing yet2", landmark: "power" }],
+&nbsp;
+    [{ key: 5, coordx: 0.5 * SVGdim[0], coordy: 0.5 * SVGdim[1], description: "nothing yet1", landmark: "stairs" },
+    { key: 6, coordx: 0.25 * SVGdim[0], coordy: 0.25 * SVGdim[1], description: "nothing yet2", landmark: "stairs" }],
+&nbsp;
+    [{ key: 7, coordx: 0.35 * SVGdim[0], coordy: 0.35 * SVGdim[1], description: "nothing yet1", landmark: "power" },
+    { key: 8, coordx: 0.15 * SVGdim[0], coordy: 0.15 * SVGdim[1], description: "nothing yet2", landmark: "power" }],
+&nbsp;
+    [{ key: 9, coordx: 0.5 * SVGdim[0], coordy: 0.5 * SVGdim[1], description: "nothing yet1", landmark: "stairs" },
+    { key: 10, coordx: 0.25 * SVGdim[0], coordy: 0.25 * SVGdim[1], description: "nothing yet2", landmark: "stairs" }],
+&nbsp;
+    [{ key: 11, coordx: 0.35 * SVGdim[0], coordy: 0.35 * SVGdim[1], description: "nothing yet1", landmark: "power" },
+    { key: 12, coordx: 0.15 * SVGdim[0], coordy: 0.15 * SVGdim[1], description: "nothing yet2", landmark: "stairs" }],
+  ])
+&nbsp;
+  const loadCircles = <span class="cstat-no" title="statement not covered" >(indoorMarkers[floor]).map(<span class="fstat-no" title="function not covered" >item </span>=&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    while (SVGdim[0] != 1 &amp;&amp; SVGdim[1] != 1) {</span>
+<span class="cstat-no" title="statement not covered" >      console.log("important numbers are " + SVGdim[0] + " AND " + SVGdim[1])</span>
+<span class="cstat-no" title="statement not covered" >      if (item.landmark == "stairs") {</span>
+<span class="cstat-no" title="statement not covered" >        return (</span>
+          &lt;Image onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >handleDelete(item.coordx, item.coordy)}</span> key={item.key} x={item.coordx} y={item.coordy} width={0.05 * Dimensions.get("window").width} height={0.05 * Dimensions.get("window").width} href={require('./landmark_images/stairs.png')} /&gt;
+          // &lt;Circle onPress={() =&gt; handleDelete(item.coordx, item.coordy)} key={item.key} cx={item.coordx} cy={item.coordy} r="4" fill="black" /&gt;)
+        )
+      }
+      else <span class="cstat-no" title="statement not covered" >if (item.landmark == "power") {</span>
+<span class="cstat-no" title="statement not covered" >        return (</span>
+          &lt;Image onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >handleDelete(item.coordx, item.coordy)}</span> key={item.key} x={item.coordx} y={item.coordy} width={0.05 * Dimensions.get("window").width} height={0.05 * Dimensions.get("window").width} href={require('./landmark_images/power.png')} /&gt;
+        )
+      }
+      else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (item.landmark == "information") {</span>
+<span class="cstat-no" title="statement not covered" >        return (</span>
+          &lt;Image onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >handleDelete(item.coordx, item.coordy)}</span> key={item.key} x={item.coordx} y={item.coordy} width={0.05 * Dimensions.get("window").width} height={0.05 * Dimensions.get("window").width} href={require('./landmark_images/information.png')} /&gt;
+        )
+      }
+    }
+  }
+  )
+&nbsp;
+  function <span class="fstat-no" title="function not covered" >addCircle(</span>evt: any) {
+<span class="cstat-no" title="statement not covered" >    Alert.alert("Are you sure you want to add a landmark here?", undefined,</span>
+      [{ text: "Cancel", onPress: <span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >console.log("Cancelled") </span>}
+        ,
+      {
+        text: "Confirm", onPress: <span class="fstat-no" title="function not covered" >() =</span>&gt; {
+<span class="cstat-no" title="statement not covered" >          setShowModal(true)</span>
+<span class="cstat-no" title="statement not covered" >          setCoords([evt.nativeEvent.locationX, evt.nativeEvent.locationY])</span>
+        }
+      }])
+  }
+&nbsp;
+  function <span class="fstat-no" title="function not covered" >addCircleConfirmed(</span>) {
+    let newKey: number
+<span class="cstat-no" title="statement not covered" >    if (indoorMarkers[floor].length == 0) {</span>
+<span class="cstat-no" title="statement not covered" >      newKey = floor * 100</span>
+    }
+    else {
+<span class="cstat-no" title="statement not covered" >      newKey = indoorMarkers[floor][indoorMarkers[floor].length - 1].key + 1</span>
+    }
+    const newDot = <span class="cstat-no" title="statement not covered" >{ key: newKey, coordx: coords[0], coordy: coords[1], description: "filler", landmark: checked }</span>
+<span class="cstat-no" title="statement not covered" >    console.log(checked)</span>
+<span class="cstat-no" title="statement not covered" >    console.log(newDot)</span>
+<span class="cstat-no" title="statement not covered" >    indoorMarkers[floor].push(newDot)</span>
+<span class="cstat-no" title="statement not covered" >    setIndoorMarkers(indoorMarkers)</span>
+<span class="cstat-no" title="statement not covered" >    setShowAddedDot(true)</span>
+<span class="cstat-no" title="statement not covered" >    Alert.alert("Added Circle: coordinates are " + coords[0].toFixed(3) + " and " + coords[1].toFixed(3))</span>
+  }
+&nbsp;
+  function <span class="fstat-no" title="function not covered" >handleDelete(</span>coordx: number, coordy: number) {
+<span class="cstat-no" title="statement not covered" >    Alert.alert("Are you sure you want to delete this landmark?", undefined,</span>
+      [{ text: "Cancel", onPress: <span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >console.log("Cancelled") </span>}
+        ,
+      { text: "Confirm", onPress: <span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >handleDeleteConfirmed() </span>}])
+&nbsp;
+&nbsp;
+    function <span class="fstat-no" title="function not covered" >handleDeleteConfirmed(</span>) {
+      const result = <span class="cstat-no" title="statement not covered" >indoorMarkers[floor].filter(<span class="fstat-no" title="function not covered" >indoorMarker </span>=&gt; <span class="cstat-no" title="statement not covered" >indoorMarker['coordx'] != coordx &amp;&amp; indoorMarker['coordy'] != coordy)</span></span>
+<span class="cstat-no" title="statement not covered" >      indoorMarkers[floor] = result</span>
+<span class="cstat-no" title="statement not covered" >      setIndoorMarkers(indoorMarkers);</span>
+<span class="cstat-no" title="statement not covered" >      setShowDots(true)</span>
+<span class="cstat-no" title="statement not covered" >      Alert.alert("Delete: Coordinates of deleted circle were " + coordx.toFixed(3) + " and " + coordy.toFixed(3))</span>
+<span class="cstat-no" title="statement not covered" >      console.log(result)</span>
+<span class="cstat-no" title="statement not covered" >      console.log(indoorMarkers[floor])</span>
+    }
+  }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >  useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+    // Alert.alert("useEffect has been triggered")
+<span class="cstat-no" title="statement not covered" >    setShowAddedDot(false)</span>
+<span class="cstat-no" title="statement not covered" >    setShowDots(false)</span>
+<span class="cstat-no" title="statement not covered" >    setTimeout(<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >setShowME(true),</span> 100);</span>
+  })
+&nbsp;
+&nbsp;
+  const compArray = <span class="cstat-no" title="statement not covered" >[</span>
+    &lt;FirstFloorC style={{ borderColor: "red", borderWidth: 0 }} height={"100%"} width={"100%"} /&gt;,
+    &lt;SecondFloorC style={{ borderColor: "red", borderWidth: 0 }} height={"100%"} width={"100%"} /&gt;,
+    &lt;ThirdFloorC viewBox='250 131 310 310' style={{ borderColor: "red", borderWidth: 0 }} height={"100%"} width={"100%"} /&gt;,
+    &lt;FourthFloorC viewBox='250 140 300 300' style={{ borderColor:"blue" , borderWidth:0, height:"100%" , width:"100%",}}/&gt;,
+    &lt;FifthFloorC viewBox='257 155 270 290' style={{ borderColor: "red", borderWidth: 0 }} height={"100%"} width={"100%"} /&gt;,
+    &lt;BasementC style={{ borderColor: "red", borderWidth: 0 }} height={"100%"} width={"100%"} /&gt;
+  ]
+&nbsp;
+&nbsp;
+  // TODO: wire up promptaddlandmark, applyfilters, and focuslandmark methods passed from MapNavigator
+<span class="cstat-no" title="statement not covered" >  return (</span>
+    &lt;View style={{ height: '100%', width: '100%', padding: 5 }}&gt;
+      {console.log("THE STATE IS NOW " + floor)}
+      &lt;StatusBar backgroundColor="#121212" /&gt;
+      &lt;CustomModal/&gt;
+      &lt;Text style={{ fontSize: 16, marginBottom: 5 }}&gt;Please select a floor you would like to go to.&lt;/Text&gt;
+      &lt;Picker
+        style={{ backgroundColor: '#d9d9d9' }}
+        selectedValue={floor} // the text of what gets displayed on the dropdown header
+        onValueChange={<span class="fstat-no" title="function not covered" >(i</span>temValue, itemIndex: number) =&gt; {
+<span class="cstat-no" title="statement not covered" >          setFloor(itemIndex)</span>
+<span class="cstat-no" title="statement not covered" >          setShowME(false)</span>
+        }}&gt;
+        {/* The value in Picker.Item refers to selectedValue in Picker, which refers to the state "floor" */}
+        &lt;Picker.Item label="First Floor" value={0} /&gt;
+        &lt;Picker.Item label="Second Floor" value={1} /&gt;
+        &lt;Picker.Item label="Third Floor" value={2} /&gt;
+        &lt;Picker.Item label="Fourth Floor" value={3} /&gt;
+        &lt;Picker.Item label="Fifth Floor" value={4} /&gt;
+        &lt;Picker.Item label="Basement" value={5} /&gt;
+      &lt;/Picker&gt;
+&nbsp;
+      &lt;View style={{ flex: 1, alignItems: "center", height: '100%', width: '100%' }}&gt;
+        &lt;View style={styles.container}&gt;
+          {showME === false ?
+            &lt;View style={{ display: 'flex', flexDirection: 'row', justifyContent: "center", }}&gt;
+              &lt;Spinner size={200} color={colors.red} type="9CubeGrid" /&gt;
+            &lt;/View&gt; :
+&nbsp;
+            &lt;ReactNativeZoomableView
+              zoomStep={2.8}
+              bindToBorders={true}
+              // initialZoom={2.2}
+              maxZoom={2.8}
+              minZoom={1}
+              initialOffsetY={5}
+              onLongPress={<span class="fstat-no" title="function not covered" >(e</span>vent) =&gt; { <span class="cstat-no" title="statement not covered" >addCircle(event) }</span>}
+            &gt;
+              &lt;Modal transparent={true} visible={showModal2}&gt;
+                &lt;View style={{ backgroundColor: "#000000aa", flex: 1 }}&gt;
+                  &lt;View style={{ backgroundColor: "#ffffff", margin: 50, padding: 20, borderRadius: 10, }}&gt;
+                    &lt;Text style={{ fontSize: 18, marginBottom: 10 }}&gt;Type of Landmark to Add:&lt;/Text&gt;
+&nbsp;
+                    &lt;View style={{ flexDirection: "row", alignItems: "center" }}&gt;
+                      &lt;RadioButton
+                        value="information"
+                        status={checked === 'information' ? 'checked' : 'unchecked'}
+                        onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >setChecked('information')}</span>
+                      /&gt;
+                      &lt;Text style={{ fontSize: 16 }}&gt;Information&lt;/Text&gt;
+                    &lt;/View&gt;
+&nbsp;
+                    &lt;View style={{ flexDirection: "row", alignItems: "center" }}&gt;
+                      &lt;RadioButton
+                        value="power"
+                        status={checked === 'power' ? 'checked' : 'unchecked'}
+                        onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >setChecked('power')}</span>
+                      /&gt;
+                      &lt;Text style={{ fontSize: 16 }}&gt;Power&lt;/Text&gt;
+                    &lt;/View&gt;
+&nbsp;
+                    &lt;View style={{ flexDirection: "row", alignItems: "center", marginBottom: 11 }}&gt;
+                      &lt;RadioButton
+                        value="stairs"
+                        status={checked === 'stairs' ? 'checked' : 'unchecked'}
+                        onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >setChecked('stairs')}</span>
+                      /&gt;
+                      &lt;Text style={{ fontSize: 16 }}&gt;Stairs&lt;/Text&gt;
+                    &lt;/View&gt;
+&nbsp;
+                    &lt;Button color={"red"} title='OK' onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; {
+<span class="cstat-no" title="statement not covered" >                      addCircleConfirmed()</span>
+<span class="cstat-no" title="statement not covered" >                      setShowModal(false)</span>
+                    }}&gt;&lt;/Button&gt;
+                  &lt;/View&gt;
+                &lt;/View&gt;
+              &lt;/Modal&gt;
+&nbsp;
+              &lt;Svg onLayout={<span class="fstat-no" title="function not covered" >event </span>=&gt; {
+                // console.log("OFFICIAL: " + event.nativeEvent.layout.width + " , " + event.nativeEvent.layout.height)
+<span class="cstat-no" title="statement not covered" >                console.log(SVGdim[0] + " AND " + SVGdim[1])</span>
+<span class="cstat-no" title="statement not covered" >                setSVGdim([event.nativeEvent.layout.width, event.nativeEvent.layout.height])</span>
+&nbsp;
+                // TODO: change this mapping to apply to Landmark type
+                let ans = <span class="cstat-no" title="statement not covered" >indoorCircles[floor].map(<span class="fstat-no" title="function not covered" >item </span>=&gt; {</span>
+<span class="cstat-no" title="statement not covered" >                  return { ...item, coordx: item.coordx * event.nativeEvent.layout.width, coordy: item.coordy * event.nativeEvent.layout.height }</span>
+                })
+<span class="cstat-no" title="statement not covered" >                indoorCircles[floor] = ans</span>
+                // setIndoorMarkers(indoorCircles)
+              }}&gt;
+&nbsp;
+                {firstTime==true? undefined : loadCircles}
+&nbsp;
+                {compArray[floor]}
+              &lt;/Svg&gt;
+&nbsp;
+            &lt;/ReactNativeZoomableView&gt;
+&nbsp;
+          }
+&nbsp;
+        &lt;/View&gt;
+      &lt;/View&gt;
+      &lt;Button title="load coordinates" onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; {
+<span class="cstat-no" title="statement not covered" >        setfirstTime(false) </span>
+<span class="cstat-no" title="statement not covered" >        setIndoorMarkers(indoorCircles) }</span>} /&gt;
+      {/* &lt;Button title="Go back to map" onPress={() =&gt; props.navigation.goBack()} /&gt; */}
+&nbsp;
+    &lt;/View&gt;
+  );
+}
+&nbsp;
+const styles = <span class="cstat-no" title="statement not covered" >StyleSheet.create({</span>
+  container: {
+    flex: 1,
+    // backgroundColor: "#fff",
+    justifyContent: "center",
+    borderColor: "black",
+    borderWidth: 2,
+    marginVertical: 7,
+    aspectRatio: 9/10,  // (caters to portrait mode) (width is 66% the value of height dimension)
+    // flex: 1,
+    // // backgroundColor: "#fff",
+    // justifyContent: "center",
+    // borderColor: "black",
+    // borderWidth: 2,
+    // width: '100%',
+    // height: '85%',
+    // marginVertical: 15,
+  },
+  image: {
+    alignItems: 'center',
+    justifyContent: 'center',
+  },
+  png: {
+    borderColor: "red",
+    borderWidth: 3
+  }
+});
+&nbsp;
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default IndoorMap;</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 214 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/Map.styles.tsx.html

@@ -0,0 +1,214 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/MainMapComponent/Map.styles.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Map/MainMapComponent</a> Map.styles.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/4</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/4</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { StyleSheet } from "react-native";</span>
+<span class="cstat-no" title="statement not covered" >import { colors } from "../../../utils/GlobalUtils";</span>
+&nbsp;
+const mapStyles = <span class="cstat-no" title="statement not covered" >StyleSheet.create({</span>
+    lowerMapButton: {
+        backgroundColor: colors.red, 
+        elevation: 10, 
+        right: 20, 
+        position: 'absolute', 
+        height: 40, width: 40, 
+        borderRadius: 20, 
+        justifyContent: "center", 
+        alignItems: 'center'},
+    filterButton: {
+        elevation: 10, 
+        height: 40, 
+        width: 40, 
+        borderRadius: 20, 
+        justifyContent: "center", 
+        alignItems: 'center',
+        backgroundColor: 'white', 
+    },
+    userLocationButton: {
+        bottom: 250, 
+    },
+    addLandmarkButton: {
+        bottom: 190, 
+    },
+    voiceButton: {
+        bottom:130,
+    },
+    alertButton: {
+        bottom: 70,
+    }
+})
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default mapStyles</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 1126 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/OutdoorMap.tsx.html

@@ -0,0 +1,1126 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/MainMapComponent/OutdoorMap.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Map/MainMapComponent</a> OutdoorMap.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/134</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/56</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/28</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/125</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a>
+<a name='L126'></a><a href='#L126'>126</a>
+<a name='L127'></a><a href='#L127'>127</a>
+<a name='L128'></a><a href='#L128'>128</a>
+<a name='L129'></a><a href='#L129'>129</a>
+<a name='L130'></a><a href='#L130'>130</a>
+<a name='L131'></a><a href='#L131'>131</a>
+<a name='L132'></a><a href='#L132'>132</a>
+<a name='L133'></a><a href='#L133'>133</a>
+<a name='L134'></a><a href='#L134'>134</a>
+<a name='L135'></a><a href='#L135'>135</a>
+<a name='L136'></a><a href='#L136'>136</a>
+<a name='L137'></a><a href='#L137'>137</a>
+<a name='L138'></a><a href='#L138'>138</a>
+<a name='L139'></a><a href='#L139'>139</a>
+<a name='L140'></a><a href='#L140'>140</a>
+<a name='L141'></a><a href='#L141'>141</a>
+<a name='L142'></a><a href='#L142'>142</a>
+<a name='L143'></a><a href='#L143'>143</a>
+<a name='L144'></a><a href='#L144'>144</a>
+<a name='L145'></a><a href='#L145'>145</a>
+<a name='L146'></a><a href='#L146'>146</a>
+<a name='L147'></a><a href='#L147'>147</a>
+<a name='L148'></a><a href='#L148'>148</a>
+<a name='L149'></a><a href='#L149'>149</a>
+<a name='L150'></a><a href='#L150'>150</a>
+<a name='L151'></a><a href='#L151'>151</a>
+<a name='L152'></a><a href='#L152'>152</a>
+<a name='L153'></a><a href='#L153'>153</a>
+<a name='L154'></a><a href='#L154'>154</a>
+<a name='L155'></a><a href='#L155'>155</a>
+<a name='L156'></a><a href='#L156'>156</a>
+<a name='L157'></a><a href='#L157'>157</a>
+<a name='L158'></a><a href='#L158'>158</a>
+<a name='L159'></a><a href='#L159'>159</a>
+<a name='L160'></a><a href='#L160'>160</a>
+<a name='L161'></a><a href='#L161'>161</a>
+<a name='L162'></a><a href='#L162'>162</a>
+<a name='L163'></a><a href='#L163'>163</a>
+<a name='L164'></a><a href='#L164'>164</a>
+<a name='L165'></a><a href='#L165'>165</a>
+<a name='L166'></a><a href='#L166'>166</a>
+<a name='L167'></a><a href='#L167'>167</a>
+<a name='L168'></a><a href='#L168'>168</a>
+<a name='L169'></a><a href='#L169'>169</a>
+<a name='L170'></a><a href='#L170'>170</a>
+<a name='L171'></a><a href='#L171'>171</a>
+<a name='L172'></a><a href='#L172'>172</a>
+<a name='L173'></a><a href='#L173'>173</a>
+<a name='L174'></a><a href='#L174'>174</a>
+<a name='L175'></a><a href='#L175'>175</a>
+<a name='L176'></a><a href='#L176'>176</a>
+<a name='L177'></a><a href='#L177'>177</a>
+<a name='L178'></a><a href='#L178'>178</a>
+<a name='L179'></a><a href='#L179'>179</a>
+<a name='L180'></a><a href='#L180'>180</a>
+<a name='L181'></a><a href='#L181'>181</a>
+<a name='L182'></a><a href='#L182'>182</a>
+<a name='L183'></a><a href='#L183'>183</a>
+<a name='L184'></a><a href='#L184'>184</a>
+<a name='L185'></a><a href='#L185'>185</a>
+<a name='L186'></a><a href='#L186'>186</a>
+<a name='L187'></a><a href='#L187'>187</a>
+<a name='L188'></a><a href='#L188'>188</a>
+<a name='L189'></a><a href='#L189'>189</a>
+<a name='L190'></a><a href='#L190'>190</a>
+<a name='L191'></a><a href='#L191'>191</a>
+<a name='L192'></a><a href='#L192'>192</a>
+<a name='L193'></a><a href='#L193'>193</a>
+<a name='L194'></a><a href='#L194'>194</a>
+<a name='L195'></a><a href='#L195'>195</a>
+<a name='L196'></a><a href='#L196'>196</a>
+<a name='L197'></a><a href='#L197'>197</a>
+<a name='L198'></a><a href='#L198'>198</a>
+<a name='L199'></a><a href='#L199'>199</a>
+<a name='L200'></a><a href='#L200'>200</a>
+<a name='L201'></a><a href='#L201'>201</a>
+<a name='L202'></a><a href='#L202'>202</a>
+<a name='L203'></a><a href='#L203'>203</a>
+<a name='L204'></a><a href='#L204'>204</a>
+<a name='L205'></a><a href='#L205'>205</a>
+<a name='L206'></a><a href='#L206'>206</a>
+<a name='L207'></a><a href='#L207'>207</a>
+<a name='L208'></a><a href='#L208'>208</a>
+<a name='L209'></a><a href='#L209'>209</a>
+<a name='L210'></a><a href='#L210'>210</a>
+<a name='L211'></a><a href='#L211'>211</a>
+<a name='L212'></a><a href='#L212'>212</a>
+<a name='L213'></a><a href='#L213'>213</a>
+<a name='L214'></a><a href='#L214'>214</a>
+<a name='L215'></a><a href='#L215'>215</a>
+<a name='L216'></a><a href='#L216'>216</a>
+<a name='L217'></a><a href='#L217'>217</a>
+<a name='L218'></a><a href='#L218'>218</a>
+<a name='L219'></a><a href='#L219'>219</a>
+<a name='L220'></a><a href='#L220'>220</a>
+<a name='L221'></a><a href='#L221'>221</a>
+<a name='L222'></a><a href='#L222'>222</a>
+<a name='L223'></a><a href='#L223'>223</a>
+<a name='L224'></a><a href='#L224'>224</a>
+<a name='L225'></a><a href='#L225'>225</a>
+<a name='L226'></a><a href='#L226'>226</a>
+<a name='L227'></a><a href='#L227'>227</a>
+<a name='L228'></a><a href='#L228'>228</a>
+<a name='L229'></a><a href='#L229'>229</a>
+<a name='L230'></a><a href='#L230'>230</a>
+<a name='L231'></a><a href='#L231'>231</a>
+<a name='L232'></a><a href='#L232'>232</a>
+<a name='L233'></a><a href='#L233'>233</a>
+<a name='L234'></a><a href='#L234'>234</a>
+<a name='L235'></a><a href='#L235'>235</a>
+<a name='L236'></a><a href='#L236'>236</a>
+<a name='L237'></a><a href='#L237'>237</a>
+<a name='L238'></a><a href='#L238'>238</a>
+<a name='L239'></a><a href='#L239'>239</a>
+<a name='L240'></a><a href='#L240'>240</a>
+<a name='L241'></a><a href='#L241'>241</a>
+<a name='L242'></a><a href='#L242'>242</a>
+<a name='L243'></a><a href='#L243'>243</a>
+<a name='L244'></a><a href='#L244'>244</a>
+<a name='L245'></a><a href='#L245'>245</a>
+<a name='L246'></a><a href='#L246'>246</a>
+<a name='L247'></a><a href='#L247'>247</a>
+<a name='L248'></a><a href='#L248'>248</a>
+<a name='L249'></a><a href='#L249'>249</a>
+<a name='L250'></a><a href='#L250'>250</a>
+<a name='L251'></a><a href='#L251'>251</a>
+<a name='L252'></a><a href='#L252'>252</a>
+<a name='L253'></a><a href='#L253'>253</a>
+<a name='L254'></a><a href='#L254'>254</a>
+<a name='L255'></a><a href='#L255'>255</a>
+<a name='L256'></a><a href='#L256'>256</a>
+<a name='L257'></a><a href='#L257'>257</a>
+<a name='L258'></a><a href='#L258'>258</a>
+<a name='L259'></a><a href='#L259'>259</a>
+<a name='L260'></a><a href='#L260'>260</a>
+<a name='L261'></a><a href='#L261'>261</a>
+<a name='L262'></a><a href='#L262'>262</a>
+<a name='L263'></a><a href='#L263'>263</a>
+<a name='L264'></a><a href='#L264'>264</a>
+<a name='L265'></a><a href='#L265'>265</a>
+<a name='L266'></a><a href='#L266'>266</a>
+<a name='L267'></a><a href='#L267'>267</a>
+<a name='L268'></a><a href='#L268'>268</a>
+<a name='L269'></a><a href='#L269'>269</a>
+<a name='L270'></a><a href='#L270'>270</a>
+<a name='L271'></a><a href='#L271'>271</a>
+<a name='L272'></a><a href='#L272'>272</a>
+<a name='L273'></a><a href='#L273'>273</a>
+<a name='L274'></a><a href='#L274'>274</a>
+<a name='L275'></a><a href='#L275'>275</a>
+<a name='L276'></a><a href='#L276'>276</a>
+<a name='L277'></a><a href='#L277'>277</a>
+<a name='L278'></a><a href='#L278'>278</a>
+<a name='L279'></a><a href='#L279'>279</a>
+<a name='L280'></a><a href='#L280'>280</a>
+<a name='L281'></a><a href='#L281'>281</a>
+<a name='L282'></a><a href='#L282'>282</a>
+<a name='L283'></a><a href='#L283'>283</a>
+<a name='L284'></a><a href='#L284'>284</a>
+<a name='L285'></a><a href='#L285'>285</a>
+<a name='L286'></a><a href='#L286'>286</a>
+<a name='L287'></a><a href='#L287'>287</a>
+<a name='L288'></a><a href='#L288'>288</a>
+<a name='L289'></a><a href='#L289'>289</a>
+<a name='L290'></a><a href='#L290'>290</a>
+<a name='L291'></a><a href='#L291'>291</a>
+<a name='L292'></a><a href='#L292'>292</a>
+<a name='L293'></a><a href='#L293'>293</a>
+<a name='L294'></a><a href='#L294'>294</a>
+<a name='L295'></a><a href='#L295'>295</a>
+<a name='L296'></a><a href='#L296'>296</a>
+<a name='L297'></a><a href='#L297'>297</a>
+<a name='L298'></a><a href='#L298'>298</a>
+<a name='L299'></a><a href='#L299'>299</a>
+<a name='L300'></a><a href='#L300'>300</a>
+<a name='L301'></a><a href='#L301'>301</a>
+<a name='L302'></a><a href='#L302'>302</a>
+<a name='L303'></a><a href='#L303'>303</a>
+<a name='L304'></a><a href='#L304'>304</a>
+<a name='L305'></a><a href='#L305'>305</a>
+<a name='L306'></a><a href='#L306'>306</a>
+<a name='L307'></a><a href='#L307'>307</a>
+<a name='L308'></a><a href='#L308'>308</a>
+<a name='L309'></a><a href='#L309'>309</a>
+<a name='L310'></a><a href='#L310'>310</a>
+<a name='L311'></a><a href='#L311'>311</a>
+<a name='L312'></a><a href='#L312'>312</a>
+<a name='L313'></a><a href='#L313'>313</a>
+<a name='L314'></a><a href='#L314'>314</a>
+<a name='L315'></a><a href='#L315'>315</a>
+<a name='L316'></a><a href='#L316'>316</a>
+<a name='L317'></a><a href='#L317'>317</a>
+<a name='L318'></a><a href='#L318'>318</a>
+<a name='L319'></a><a href='#L319'>319</a>
+<a name='L320'></a><a href='#L320'>320</a>
+<a name='L321'></a><a href='#L321'>321</a>
+<a name='L322'></a><a href='#L322'>322</a>
+<a name='L323'></a><a href='#L323'>323</a>
+<a name='L324'></a><a href='#L324'>324</a>
+<a name='L325'></a><a href='#L325'>325</a>
+<a name='L326'></a><a href='#L326'>326</a>
+<a name='L327'></a><a href='#L327'>327</a>
+<a name='L328'></a><a href='#L328'>328</a>
+<a name='L329'></a><a href='#L329'>329</a>
+<a name='L330'></a><a href='#L330'>330</a>
+<a name='L331'></a><a href='#L331'>331</a>
+<a name='L332'></a><a href='#L332'>332</a>
+<a name='L333'></a><a href='#L333'>333</a>
+<a name='L334'></a><a href='#L334'>334</a>
+<a name='L335'></a><a href='#L335'>335</a>
+<a name='L336'></a><a href='#L336'>336</a>
+<a name='L337'></a><a href='#L337'>337</a>
+<a name='L338'></a><a href='#L338'>338</a>
+<a name='L339'></a><a href='#L339'>339</a>
+<a name='L340'></a><a href='#L340'>340</a>
+<a name='L341'></a><a href='#L341'>341</a>
+<a name='L342'></a><a href='#L342'>342</a>
+<a name='L343'></a><a href='#L343'>343</a>
+<a name='L344'></a><a href='#L344'>344</a>
+<a name='L345'></a><a href='#L345'>345</a>
+<a name='L346'></a><a href='#L346'>346</a>
+<a name='L347'></a><a href='#L347'>347</a>
+<a name='L348'></a><a href='#L348'>348</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { FontAwesome } from "@expo/vector-icons";</span>
+import { RouteProp } from "@react-navigation/native";
+<span class="cstat-no" title="statement not covered" >import { booleanPointInPolygon, circle } from '@turf/turf';</span>
+<span class="cstat-no" title="statement not covered" >import * as Notifications from 'expo-notifications';</span>
+<span class="cstat-no" title="statement not covered" >import { observer } from "mobx-react";</span>
+<span class="cstat-no" title="statement not covered" >import React, { MutableRefObject, useEffect, useState } from "react";</span>
+<span class="cstat-no" title="statement not covered" >import { Alert, AppState, Image, Keyboard, Platform, TouchableOpacity, TouchableWithoutFeedback, View } from "react-native";</span>
+import { ScrollView } from "react-native-gesture-handler";
+<span class="cstat-no" title="statement not covered" >import MapView, { LatLng, Marker, Polygon } from "react-native-maps";</span>
+import { Chip } from "react-native-paper";
+<span class="cstat-no" title="statement not covered" >import { PERMISSIONS } from "react-native-permissions";</span>
+<span class="cstat-no" title="statement not covered" >import Spokestack from 'react-native-spokestack';</span>
+import { Landmark, useLandmarks } from "../../../hooks/useLandmarks";
+import { useProfile } from "../../../hooks/useProfile";
+import { AuthTabsParamList as AuthTabsParamList, AuthTabsNavigationProp } from "../../../navigation/AuthorizedNavigator";
+import { authStore } from "../../../libs/auth/AuthStore";
+import { NotifType } from "../../../types";
+<span class="cstat-no" title="statement not covered" >import { checkVoicePermissions, colors, getMapPermissions, lmTypes } from "../../../utils/GlobalUtils";</span>
+<span class="cstat-no" title="statement not covered" >import Badge from "../../Badge";</span>
+<span class="cstat-no" title="statement not covered" >import { IconButton } from "../../Buttons";</span>
+import AddLandmarkPanel from "../Panels/AddLandmarkPanel";
+<span class="cstat-no" title="statement not covered" >import NearbyLandmarksPanel from "../Panels/NearbyLandmarksPanel";</span>
+import { FilterPanel } from "../Panels/FilterPanel/FilterPanel";
+import LandmarkDetails from "../Panels/LandmarkDetailsPanel/LandmarkDetails";
+<span class="cstat-no" title="statement not covered" >import { VoicePanel } from "../Panels/VoicePanel";</span>
+<span class="cstat-no" title="statement not covered" >import mapStyles from "./Map.styles";</span>
+<span class="cstat-no" title="statement not covered" >import { useMapState, useOutdoorMapState } from "./useMapState";</span>
+import { MapStackNavigationProp, MapStackParamList } from "../../../navigation/MapNavigator";
+&nbsp;
+/**
+ * An interface representing the user location retrieved from [expo-location]{@link https://docs.expo.dev/versions/latest/sdk/location/}.
+ * @category Map
+ */
+export interface UserLocation {
+    latitude: number;
+    longitude: number;
+    heading?: number;
+}
+&nbsp;
+export type MapStackRouteProp = RouteProp&lt;MapStackParamList, 'Outdoor'&gt;;
+&nbsp;
+export type AuthTabsMapRouteProp = RouteProp&lt;AuthTabsParamList, 'Map'&gt;;
+&nbsp;
+/**
+ * The screen component containing the Map and all related functionality. Uses [react-native-maps]{@link https://github.com/react-native-maps/react-native-maps}
+ * @category Map
+ * @component
+ */
+&nbsp;
+interface OutdoorMapProps {
+    mapNavigation: MapStackNavigationProp, 
+    authNavigation: AuthTabsNavigationProp, 
+    route: AuthTabsMapRouteProp,
+    focusLandmark: (landmark: Landmark) =&gt; void,
+    setSelectedLandmarkId: (id: string) =&gt; void,
+    selectedLandmarkId: string,
+    newLandmark: Landmark
+    setNewLandmark: (landmark: Landmark) =&gt; void
+    toggleLmDetails: (state: boolean) =&gt; void,
+    toggleLmAdd: (state: boolean) =&gt; void,
+    landmarks: Landmark[]
+    applyFilters: (landmarks: Landmark[]) =&gt; Landmark[]
+    promptAddLandmark: (longitude: number, latitude: number) =&gt; void
+}
+&nbsp;
+const OutdoorMap: React.FC&lt;OutdoorMapProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(p</span>rops) =&gt; {</span>
+    const mapState = <span class="cstat-no" title="statement not covered" >useOutdoorMapState()</span>
+&nbsp;
+    /**
+     * If the ReactNavigation route prop changes, check if it contains incoming selected landmarks, display them if there are. This will be triggered by incoming notifcations 
+     * (See the AuthorizedNavigator page for the useEffect that will trigger this)
+     */
+<span class="cstat-no" title="statement not covered" >     useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (props.route?.params?.selectedLandmark) {</span>
+<span class="cstat-no" title="statement not covered" >            props.setSelectedLandmarkId(props.route?.params?.selectedLandmark)</span>
+        }
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (props.route?.params?.selectedLandmarks) {</span>
+<span class="cstat-no" title="statement not covered" >            mapState.toggleNearbyLmPanel(true)</span>
+        }
+    }, [props.route])
+&nbsp;
+    /**
+     * Toggle the lm details panel when a new selected landmark is detected (triggered by pressing on a map marker, or from the list of nearby landmarks)
+     */
+<span class="cstat-no" title="statement not covered" >     useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        console.log("[LandmarkDetails]: Landmark selected - " + props.selectedLandmarkId)</span>
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (props.selectedLandmarkId) {</span>
+            const landmark = <span class="cstat-no" title="statement not covered" >props.landmarks.find(<span class="fstat-no" title="function not covered" >lm </span>=&gt; <span class="cstat-no" title="statement not covered" >lm.id == props.selectedLandmarkId)</span></span>
+<span class="cstat-no" title="statement not covered" >            mapState.mapRef.current.animateToRegion({latitude: landmark.latitude, longitude: landmark.longitude, latitudeDelta: 0.01, longitudeDelta: 0.01})</span>
+<span class="cstat-no" title="statement not covered" >            props.toggleLmDetails(true)</span>
+        }
+    }, [props.selectedLandmarkId])
+&nbsp;
+    /**
+     * Move to pressed location when newlandmark changes
+     */
+<span class="cstat-no" title="statement not covered" >     useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (props.selectedLandmarkId) {</span>
+<span class="cstat-no" title="statement not covered" >            mapState.mapRef.current.animateToRegion({latitude: props.newLandmark.latitude, longitude: props.newLandmark.longitude, latitudeDelta: 0.01, longitudeDelta: 0.01})</span>
+        }
+    }, [props.newLandmark])
+&nbsp;
+    /**
+     * Gets speech permissions from user, runs every time app is brought to foreground
+     */
+<span class="cstat-no" title="statement not covered" >     useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+        const getSpeechPermissions = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >            <span class="missing-if-branch" title="if path not taken" >I</span>if (AppState.currentState == 'active') {</span>
+<span class="cstat-no" title="statement not covered" >                await getMapPermissions()</span>
+<span class="cstat-no" title="statement not covered" >                console.log('[Permissions]: Checking voice permissions...')</span>
+<span class="cstat-no" title="statement not covered" >                if (Platform.OS == 'android') {        </span>
+                    const permitted = <span class="cstat-no" title="statement not covered" >await checkVoicePermissions([PERMISSIONS.ANDROID.RECORD_AUDIO])</span>
+<span class="cstat-no" title="statement not covered" >                    mapState.toggleVoicePermission(permitted)</span>
+<span class="cstat-no" title="statement not covered" >                    if (permitted) <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Voice permission granted')</span></span>
+                    else <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Voice permission denied')</span>
+                }
+                else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (Platform.OS == 'ios') {</span>
+                    const permitted = <span class="cstat-no" title="statement not covered" >await checkVoicePermissions([PERMISSIONS.IOS.SPEECH_RECOGNITION, PERMISSIONS.IOS.MICROPHONE])</span>
+<span class="cstat-no" title="statement not covered" >                    mapState.toggleVoicePermission(permitted)</span>
+<span class="cstat-no" title="statement not covered" >                    if (permitted) <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Voice permission granted')</span></span>
+                    else <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Voice permission denied')</span>
+                }
+            }   
+        }
+<span class="cstat-no" title="statement not covered" >        getSpeechPermissions()</span>
+        }, [AppState.currentState])
+    
+        /**
+         * Gets foreground location permissions from user, runs every time app is brought to foreground
+         */
+<span class="cstat-no" title="statement not covered" >         useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+            const checkForegroundLocationPermissions = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt;  {</span>
+<span class="cstat-no" title="statement not covered" >                <span class="missing-if-branch" title="if path not taken" >I</span>if (AppState.currentState == 'active') {</span>
+<span class="cstat-no" title="statement not covered" >                    console.log('Checking location permissions...')</span>
+<span class="cstat-no" title="statement not covered" >                    if (Platform.OS == 'android') {        </span>
+                        const permitted = <span class="cstat-no" title="statement not covered" >await checkVoicePermissions([PERMISSIONS.ANDROID.ACCESS_COARSE_LOCATION, PERMISSIONS.ANDROID.ACCESS_FINE_LOCATION])</span>
+<span class="cstat-no" title="statement not covered" >                        mapState.toggleFgroundLocationPermission(permitted)</span>
+<span class="cstat-no" title="statement not covered" >                        if (permitted) <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Location permission granted')</span></span>
+                        else <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Location permission denied')</span>
+                    }
+                    else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (Platform.OS == 'ios') {</span>
+                        const permitted = <span class="cstat-no" title="statement not covered" >await checkVoicePermissions([PERMISSIONS.IOS.LOCATION_WHEN_IN_USE])</span>
+<span class="cstat-no" title="statement not covered" >                        mapState.toggleFgroundLocationPermission(permitted)</span>
+<span class="cstat-no" title="statement not covered" >                        if (permitted) <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Location permission granted')</span></span>
+                        else <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Location permission denied')</span>
+                    }
+                }
+            }
+<span class="cstat-no" title="statement not covered" >            checkForegroundLocationPermissions();</span>
+        }, [AppState.currentState])
+    
+        /**
+         * Gets background location permissions from user, runs every time app is brought to foreground
+         */
+<span class="cstat-no" title="statement not covered" >        useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+            const checkBackgroundLocationPermissions = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt;  {</span>
+<span class="cstat-no" title="statement not covered" >                <span class="missing-if-branch" title="if path not taken" >I</span>if (AppState.currentState == 'active') {</span>
+<span class="cstat-no" title="statement not covered" >                    if (Platform.OS == 'android') {        </span>
+                        const permitted = <span class="cstat-no" title="statement not covered" >await checkVoicePermissions([PERMISSIONS.ANDROID.ACCESS_BACKGROUND_LOCATION])</span>
+<span class="cstat-no" title="statement not covered" >                        mapState.toggleBgroundLocationPermission(permitted)</span>
+<span class="cstat-no" title="statement not covered" >                        if (permitted) <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Background location permission granted')</span></span>
+                        else <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Background location permission denied')</span>
+                    }
+                    else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (Platform.OS == 'ios') {</span>
+                        const permitted = <span class="cstat-no" title="statement not covered" >await checkVoicePermissions([PERMISSIONS.IOS.LOCATION_ALWAYS])</span>
+<span class="cstat-no" title="statement not covered" >                        mapState.toggleBgroundLocationPermission(permitted)</span>
+<span class="cstat-no" title="statement not covered" >                        if (permitted) <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Background location permission granted')</span></span>
+                        else <span class="cstat-no" title="statement not covered" >console.log('[Permissions]: Background location permission denied')</span>
+                    }
+                }
+            }
+<span class="cstat-no" title="statement not covered" >            checkBackgroundLocationPermissions();</span>
+        }, [AppState.currentState])
+    
+        /**
+         * Gets net location permission the existing location permission states. It will check foreground and background permissions and AppState, 
+         * then from that it will decide if location-enabled features should be activated (through the mapState state values).
+         */
+<span class="cstat-no" title="statement not covered" >         useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+            const updateLocationPermissionOnAppStateChange = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
+                const netLocationPermissions = <span class="cstat-no" title="statement not covered" >mapState.bgroundLocationPermission || (mapState.fgroundLocationPermission &amp;&amp; AppState.currentState == 'active')</span>
+<span class="cstat-no" title="statement not covered" >                console.log('[Permissions]: Appstate, or location permissions changed, net location permissions found to be: ' + netLocationPermissions)</span>
+<span class="cstat-no" title="statement not covered" >                mapState.toggleLocationPermitted(netLocationPermissions)</span>
+            }
+<span class="cstat-no" title="statement not covered" >            updateLocationPermissionOnAppStateChange()</span>
+        }, [AppState.currentState, mapState.bgroundLocationPermission, mapState.fgroundLocationPermission]) 
+&nbsp;
+&nbsp;
+    /**
+     * Animates the map to fly over to and focus on the user's location.
+     */
+     const flyToUser = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        console.log('[Map]: Centering on user')</span>
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (mapState.userLocation) {</span>
+<span class="cstat-no" title="statement not covered" >            mapState.mapRef.current?.animateToRegion({latitude: mapState.userLocation.latitude, longitude: mapState.userLocation.longitude, latitudeDelta: 0.01, longitudeDelta: 0.01})</span>
+        }
+    }
+&nbsp;
+    /**
+     * Activates speech recognition and opens the voice panel
+     */
+     const startSpeech = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        props.toggleLmDetails(false);</span>
+<span class="cstat-no" title="statement not covered" >        props.toggleLmAdd(false);</span>
+<span class="cstat-no" title="statement not covered" >        Spokestack.activate()</span>
+    }
+&nbsp;
+    /**
+     * Gets initial region that map should zoom into from current user location
+     */
+    const getInitialRegion = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (mapState.userLocation) {</span>
+<span class="cstat-no" title="statement not covered" >            return {latitude: mapState.userLocation.latitude, longitude: mapState.userLocation.longitude, latitudeDelta: 0.01, longitudeDelta: 0.01}</span>
+        }
+<span class="cstat-no" title="statement not covered" >        return undefined</span>
+    }
+&nbsp;
+    /**
+     * Method that runs every time user location changes, updates user location state in memory and checks if any landmarks are nearby
+     */
+    const updateLocation = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>(coord: LatLng) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        mapState.setUserLocation(coord)</span>
+        // get 10m radius around user
+        const userAlertRadius = <span class="cstat-no" title="statement not covered" >circle([coord.longitude, coord.latitude], 10, {units: 'meters'})</span>
+&nbsp;
+        // check each landmark to see if its inside user radius. if it is, and it isn't already in the list of notified landmarks, add it
+        const newLandmarksNearUser = <span class="cstat-no" title="statement not covered" >props.landmarks?.filter(<span class="fstat-no" title="function not covered" >lm </span>=&gt; {</span>
+            const landmarkNearUser = <span class="cstat-no" title="statement not covered" >booleanPointInPolygon([lm.longitude, lm.latitude], userAlertRadius)</span>
+<span class="cstat-no" title="statement not covered" >            return landmarkNearUser</span>
+        })
+&nbsp;
+        // to prevent duplicate notifications make a list of landmarks that weren't previously near the user. 
+        // these are the only ones that the user will be notified of
+        const newLandmarksNotPreviouslyNearUser = <span class="cstat-no" title="statement not covered" >newLandmarksNearUser.filter(<span class="fstat-no" title="function not covered" >lm </span>=&gt; <span class="cstat-no" title="statement not covered" >mapState.landmarksNearUser.some(<span class="fstat-no" title="function not covered" >origLm </span>=&gt; <span class="cstat-no" title="statement not covered" >lm == origLm.id)</span>)</span></span>
+&nbsp;
+        // update list
+<span class="cstat-no" title="statement not covered" >        mapState.setLandmarksNearUser(newLandmarksNearUser)</span>
+&nbsp;
+        // if there are any new landmarks near user, create a notification for them and send it
+<span class="cstat-no" title="statement not covered" >        <span class="missing-if-branch" title="if path not taken" >I</span>if (newLandmarksNotPreviouslyNearUser?.length &gt; 0) {</span>
+            const body = <span class="cstat-no" title="statement not covered" >newLandmarksNotPreviouslyNearUser.length &gt; 1 ? "There are new landmarks near by. Tap here to view" : "There is a new landmark close by. Tap here to view"</span>
+            const notifType: NotifType = <span class="cstat-no" title="statement not covered" >newLandmarksNotPreviouslyNearUser.length &gt; 1 ? 'near-landmarks' : 'near-landmark'</span>
+            const data = <span class="cstat-no" title="statement not covered" >{notif_type: notifType, landmarks: newLandmarksNotPreviouslyNearUser.length == 1 ? newLandmarksNearUser : null}</span>
+<span class="cstat-no" title="statement not covered" >            await Notifications.scheduleNotificationAsync({</span>
+                content: {
+                  title: "⚠ Landmarks close by ⚠",
+                  body: body,
+                  data: data
+                },
+                trigger: { seconds: 2 },
+              });
+        }
+    }
+&nbsp;
+    const focusNearbyLandmarks = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        if (mapState.landmarksNearUser?.length &gt; 1) {</span>
+<span class="cstat-no" title="statement not covered" >            mapState.toggleNearbyLmPanel(true)</span>
+        }
+        else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (mapState.landmarksNearUser?.length === 1) { </span>
+<span class="cstat-no" title="statement not covered" >            props.setSelectedLandmarkId(mapState.landmarksNearUser[0].id)</span>
+        }
+    }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;TouchableWithoutFeedback&gt;
+            &lt;&gt;
+            {/*Main map component*/}
+            &lt;MapView 
+                toolbarEnabled={false}
+                onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >Keyboard.dismiss()}</span>
+                testID="mapView"
+                ref={mapState.mapRef} 
+                style={{width: '100%', height: '100%'}}
+                initialRegion={getInitialRegion()} 
+                onLongPress={<span class="fstat-no" title="function not covered" >(e</span>) =&gt; <span class="cstat-no" title="statement not covered" >props.promptAddLandmark(e.nativeEvent.coordinate.longitude, e.nativeEvent.coordinate.latitude)} </span>
+                showsUserLocation={mapState.locationPermitted} 
+                onUserLocationChange={<span class="fstat-no" title="function not covered" >e </span>=&gt; <span class="cstat-no" title="statement not covered" >updateLocation(e.nativeEvent.coordinate)}</span>
+                followsUserLocation={mapState.followUser}
+                showsMyLocationButton={false}&gt;
+            &lt;Polygon // polygon for cameron library
+              coordinates={[
+                {latitude: 53.527190, longitude: -113.524205 },
+                {latitude: 53.526510, longitude: -113.524205 },
+                {latitude: 53.526510, longitude: -113.523452 },
+                {latitude: 53.527190, longitude: -113.523452 },
+                // { name: "5", latitude: 60, longitude: -105 },
+              ]}
+              fillColor={`rgba(100,100,200,0.3)`}
+              strokeWidth={2.5}
+              tappable={true}
+              onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >props.mapNavigation.navigate("Indoor")}</span>
+              /&gt;
+            {props.applyFilters(props.landmarks)?.map(<span class="fstat-no" title="function not covered" >(l</span>andmark) =&gt; {
+                let trackChanges = <span class="cstat-no" title="statement not covered" >false;</span>
+<span class="cstat-no" title="statement not covered" >                <span class="missing-if-branch" title="if path not taken" >I</span>if (landmark?.id == props.selectedLandmarkId) {</span>
+<span class="cstat-no" title="statement not covered" >                    trackChanges = true;</span>
+                }
+<span class="cstat-no" title="statement not covered" >                return (</span>
+                    &lt;Marker 
+                        tracksViewChanges={trackChanges}
+                        onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >props.focusLandmark(landmark)}</span>
+                        key={landmark.id} 
+                        coordinate={{latitude: landmark.latitude as number, longitude: landmark.longitude as number}} &gt;
+                        { landmark.landmark_type ? &lt;Image style={{height: 35, width: 25}} source={lmTypes[landmark.landmark_type].image} /&gt; : null}
+                    &lt;/Marker&gt;)})}
+            &lt;/MapView&gt;
+            
+            {/*Map buttons*/}
+            {mapState.landmarksNearUser?.length &gt; 0 ? 
+            &lt;TouchableOpacity style={[mapStyles.lowerMapButton, mapStyles.alertButton]} onPress={focusNearbyLandmarks}&gt;
+                &lt;FontAwesome name='exclamation-triangle' size={20} color='white' /&gt;
+                &lt;Badge positioning={{bottom: 7, right: 4}} value={mapState.landmarksNearUser.length}/&gt;
+            &lt;/TouchableOpacity&gt; : null}
+            {mapState.locationPermitted &amp;&amp; mapState.voicePermission ? 
+            &lt;IconButton size={20} color='white' style={[mapStyles.lowerMapButton, mapStyles.voiceButton]} icon="microphone" onPress={startSpeech}/&gt;: null}
+            &lt;IconButton size={20} color='white' style={[mapStyles.lowerMapButton, mapStyles.addLandmarkButton]} icon="plus" onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >props.promptAddLandmark(mapState.userLocation.longitude, mapState.userLocation.latitude)}</span>/&gt;
+            &lt;IconButton size={20} color='white' style={[mapStyles.lowerMapButton, mapStyles.userLocationButton]} icon="location-arrow" onPress={flyToUser}/&gt;
+            &lt;NearbyLandmarksPanel 
+                focusLandmark={props.focusLandmark}
+                nearbyLmPanelVisible={mapState.nearbyLmPanelVisible}
+                toggleAlertedLmPanel={mapState.toggleNearbyLmPanel}
+                nearbyLandmarks={mapState.landmarksNearUser}/&gt;
+            {/*Map Panels*/}
+            {mapState.voicePermission &amp;&amp; mapState.locationPermitted ? 
+            &lt;VoicePanel 
+                landmarksNearby={mapState.landmarksNearUser.length &gt; 0} 
+                toggleAlertedLandmarksVisible={mapState.toggleNearbyLmPanel}
+                navigation={props.authNavigation}
+                userCoords={{longitude: mapState.userLocation?.longitude, latitude: mapState.userLocation?.latitude}}
+                toggleVoiceVisible={mapState.toggleVoiceVisible} 
+                toggleLmDetails={props.toggleLmDetails}
+                setSelectedLandmarkId={props.setSelectedLandmarkId}
+                voiceVisible={mapState.voiceVisible}
+                newLandmark={props.newLandmark} 
+                setNewLandmark={props.setNewLandmark}
+                /&gt; : null }
+            &lt;/&gt;
+        &lt;/TouchableWithoutFeedback&gt; )
+}
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default observer(OutdoorMap);</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 176 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/index.html

@@ -0,0 +1,176 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/MainMapComponent</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> atlas-mobile-ts/src/components/Map/MainMapComponent</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/260</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/77</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/57</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/247</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <div class="pad1">
+<table class="coverage-summary">
+<thead>
+<tr>
+   <th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
+   <th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
+   <th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
+   <th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
+   <th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
+   <th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
+   <th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
+   <th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
+</tr>
+</thead>
+<tbody><tr>
+	<td class="file low" data-value="IndoorMap.tsx"><a href="IndoorMap.tsx.html">IndoorMap.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="88" class="abs low">0/88</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="21" class="abs low">0/21</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="25" class="abs low">0/25</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="86" class="abs low">0/86</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="Map.styles.tsx"><a href="Map.styles.tsx.html">Map.styles.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="4" class="abs low">0/4</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="4" class="abs low">0/4</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="OutdoorMap.tsx"><a href="OutdoorMap.tsx.html">OutdoorMap.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="134" class="abs low">0/134</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="56" class="abs low">0/56</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="28" class="abs low">0/28</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="125" class="abs low">0/125</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="modal.tsx"><a href="modal.tsx.html">modal.tsx</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="6" class="abs low">0/6</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="2" class="abs low">0/2</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="6" class="abs low">0/6</td>
+	</tr>
+
+<tr>
+	<td class="file low" data-value="useMapState.ts"><a href="useMapState.ts.html">useMapState.ts</a></td>
+	<td data-value="0" class="pic low">
+	<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
+	</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="28" class="abs low">0/28</td>
+	<td data-value="100" class="pct high">100%</td>
+	<td data-value="0" class="abs high">0/0</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="2" class="abs low">0/2</td>
+	<td data-value="0" class="pct low">0%</td>
+	<td data-value="26" class="abs low">0/26</td>
+	</tr>
+
+</tbody>
+</table>
+</div>
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 157 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/modal.tsx.html

@@ -0,0 +1,157 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/MainMapComponent/modal.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Map/MainMapComponent</a> modal.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/6</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/6</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import React, { useState, useEffect } from 'react';</span>
+<span class="cstat-no" title="statement not covered" >import { View, Text, StatusBar, StyleSheet, Dimensions, Button, ActivityIndicator, Alert, Modal } from 'react-native';</span>
+&nbsp;
+function <span class="fstat-no" title="function not covered" >CustomModal(</span>) {
+&nbsp;
+    const [showModal, setShowModal] = <span class="cstat-no" title="statement not covered" >useState(true)</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return (</span>
+            &lt;Modal transparent={true} visible={showModal}&gt;
+                &lt;View style={{ backgroundColor: "#000000aa", flex: 1 }}&gt;
+                    &lt;View style={{ backgroundColor: "#ffffff", margin: 50, padding: 20, borderRadius: 10,  }}&gt;
+                    &lt;Text style={{fontSize:20 , paddingBottom:10}}&gt;Welcome to Cameron Library!&lt;/Text&gt;
+                        &lt;Text style={{fontSize:16}}&gt;To add a landmark, hold down on the screen.&lt;/Text&gt;
+                        &lt;Text style={{fontSize:16 , paddingBottom:10}}&gt;To remove a landmark, simply tap on it.&lt;/Text&gt;
+                        &lt;Text style={{fontSize:16 , paddingBottom:10}}&gt;Feel free to look through the various levels in the Cameron library.
+                        When you're ready to access landmark information, simply press the "Load Coordinates" button near the bottom of the screen.&lt;/Text&gt;
+                        &lt;Button color={"red"} title='OK' onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >setShowModal(false)}</span>&gt;&lt;/Button&gt;
+                    &lt;/View&gt;
+                &lt;/View&gt;
+            &lt;/Modal&gt;
+    )
+}
+&nbsp;
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default CustomModal</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 457 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/MainMapComponent/useMapState.ts.html

@@ -0,0 +1,457 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/MainMapComponent/useMapState.ts</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Map/MainMapComponent</a> useMapState.ts</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/28</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/2</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/26</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { useRef, useState } from "react";</span>
+import { UserLocation } from "./OutdoorMap";
+import { Landmark } from "../../../hooks/useLandmarks";
+import MapView from "react-native-maps";
+&nbsp;
+export const <span class="cstat-no" title="statement not covered" >useMapState = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>) =</span>&gt; {</span>
+    /**
+     * State that contains the new {@link Landmark} object which is passed down to the {@link AddLandmark} modal.
+     */
+    const [newLandmark, setNewLandmark] = <span class="cstat-no" title="statement not covered" >useState&lt;Landmark&gt;(undefined);</span>
+    /**
+     * State that contains the selected {@link Landmark} object which is passed down to the {@link LandmarkDetails} modal.
+     */
+    const [selectedLandmarkId, setSelectedLandmarkId] = <span class="cstat-no" title="statement not covered" >useState&lt;string&gt;('');</span>
+    /**
+     * Holds the visibility state of the {@link AddLandmark} modal.
+     */
+    const [lmAddVisible, toggleLmAdd] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    /**
+     * Holds the visibility state of the {@link LandmarkDetails} modal.
+     */
+    const [lmDetailsVisible, toggleLmDetails] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    /**
+     * Flag that toggles whether or not editing is enabled in the {@link LandmarkDetails} modal. 
+     * The parent Map component has access to it so that it can disable closing the modal on backdrop press when it is enabled.
+     */
+    const [lmDetailsEditing, toggleLmDetailsEditing] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    /**
+     * Holds the listening state of the {@link VoicePanel} modal.
+     */
+     const [voiceActive, toggleVoiceActive] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    
+    /**
+     * Flag that determines whether the filter options are shown
+     */
+    const [filterVisible, toggleFilter] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false)</span>
+    /**
+     * State of minumum landmark rating filter
+     */
+    const [minLmRating, setMinLmRating] = <span class="cstat-no" title="statement not covered" >useState&lt;number&gt;(0)</span>
+        /**
+     * State of landmark types filter
+     */
+    const [lmFilteredTypes, setLmTypeFilter] = <span class="cstat-no" title="statement not covered" >useState&lt;number[]&gt;([])</span>
+    /**
+     * State of landmark "only show owned" filter
+     */
+    const [onlyOwned, toggleOnlyOwned] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false)</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return { </span>
+        onlyOwned, toggleOnlyOwned,
+        lmFilteredTypes, setLmTypeFilter,
+        minLmRating, setMinLmRating,
+        filterVisible, toggleFilter,
+        lmDetailsVisible, toggleLmDetails,
+        lmDetailsEditing, toggleLmDetailsEditing,
+        selectedLandmarkId, setSelectedLandmarkId,
+        newLandmark, setNewLandmark,
+        lmAddVisible, toggleLmAdd,
+     }
+}
+&nbsp;
+export const <span class="cstat-no" title="statement not covered" >useOutdoorMapState = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>) =</span>&gt; {</span>
+    /**
+     * Holds the visibility state of the {@link AddLandmark} modal.
+     */
+    const alertedLmVisibleState = <span class="cstat-no" title="statement not covered" >false;</span>
+    const [nearbyLmPanelVisible, toggleNearbyLmPanel] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(alertedLmVisibleState);</span>
+    /**
+     * State that holds a {@link UserLocation} object retrieved from location services.
+     */
+    const [userLocation, setUserLocation] = <span class="cstat-no" title="statement not covered" >useState&lt;UserLocation&gt;(undefined);</span>
+    /**
+     * Flag that determines whether the map should focus and follow the user's location.
+     */
+    const [followUser, toggleFollowUser] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    /**
+     * State that contains the selected {@link Landmark} object which is passed down to the {@link LandmarkDetails} modal.
+     */
+    const [landmarksNearUser, setLandmarksNearUser] = <span class="cstat-no" title="statement not covered" >useState&lt;Landmark[]&gt;([])</span>
+    /**
+     * Flag that toggles whether or not foreground location permission has been granted.
+     */
+    const [fgroundLocationPermission, toggleFgroundLocationPermission] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    /**
+     * Flag that toggles whether or not background location permission has been granted.
+     */
+    const [bgroundLocationPermission, toggleBgroundLocationPermission] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    /**
+     * Flag that toggles whether or not voice recording permission has been granted.
+     */
+    const [voicePermission, toggleVoicePermission] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    /**
+     * Holds the visibility state of the {@link VoicePanel} modal.
+     */
+    const [voiceVisible, toggleVoiceVisible] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+    /**
+     * Flag that toggles whether or not location is currently permitted (true if fground is granted is true and AppState is active, or if bground is active).
+     */
+    const [locationPermitted, toggleLocationPermitted] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false);</span>
+     /**
+     * Ref that holds the loaded [MapView]{@link https://github.com/react-native-maps/react-native-maps/blob/master/docs/mapview.md} instance.
+     */
+    const mapRef = <span class="cstat-no" title="statement not covered" >useRef&lt;MapView&gt;();</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return {</span>
+        nearbyLmPanelVisible, toggleNearbyLmPanel,
+        followUser, toggleFollowUser,
+        userLocation, setUserLocation,
+        landmarksNearUser, setLandmarksNearUser,
+        mapRef,
+        voicePermission, toggleVoicePermission,
+        voiceVisible, toggleVoiceVisible,
+        fgroundLocationPermission, toggleFgroundLocationPermission,
+        bgroundLocationPermission, toggleBgroundLocationPermission,
+        locationPermitted, toggleLocationPermitted,
+    }
+}</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 715 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/Panels/AddLandmarkPanel.tsx.html

@@ -0,0 +1,715 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/Panels/AddLandmarkPanel.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Map/Panels</a> AddLandmarkPanel.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/51</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/29</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/20</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/49</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a>
+<a name='L45'></a><a href='#L45'>45</a>
+<a name='L46'></a><a href='#L46'>46</a>
+<a name='L47'></a><a href='#L47'>47</a>
+<a name='L48'></a><a href='#L48'>48</a>
+<a name='L49'></a><a href='#L49'>49</a>
+<a name='L50'></a><a href='#L50'>50</a>
+<a name='L51'></a><a href='#L51'>51</a>
+<a name='L52'></a><a href='#L52'>52</a>
+<a name='L53'></a><a href='#L53'>53</a>
+<a name='L54'></a><a href='#L54'>54</a>
+<a name='L55'></a><a href='#L55'>55</a>
+<a name='L56'></a><a href='#L56'>56</a>
+<a name='L57'></a><a href='#L57'>57</a>
+<a name='L58'></a><a href='#L58'>58</a>
+<a name='L59'></a><a href='#L59'>59</a>
+<a name='L60'></a><a href='#L60'>60</a>
+<a name='L61'></a><a href='#L61'>61</a>
+<a name='L62'></a><a href='#L62'>62</a>
+<a name='L63'></a><a href='#L63'>63</a>
+<a name='L64'></a><a href='#L64'>64</a>
+<a name='L65'></a><a href='#L65'>65</a>
+<a name='L66'></a><a href='#L66'>66</a>
+<a name='L67'></a><a href='#L67'>67</a>
+<a name='L68'></a><a href='#L68'>68</a>
+<a name='L69'></a><a href='#L69'>69</a>
+<a name='L70'></a><a href='#L70'>70</a>
+<a name='L71'></a><a href='#L71'>71</a>
+<a name='L72'></a><a href='#L72'>72</a>
+<a name='L73'></a><a href='#L73'>73</a>
+<a name='L74'></a><a href='#L74'>74</a>
+<a name='L75'></a><a href='#L75'>75</a>
+<a name='L76'></a><a href='#L76'>76</a>
+<a name='L77'></a><a href='#L77'>77</a>
+<a name='L78'></a><a href='#L78'>78</a>
+<a name='L79'></a><a href='#L79'>79</a>
+<a name='L80'></a><a href='#L80'>80</a>
+<a name='L81'></a><a href='#L81'>81</a>
+<a name='L82'></a><a href='#L82'>82</a>
+<a name='L83'></a><a href='#L83'>83</a>
+<a name='L84'></a><a href='#L84'>84</a>
+<a name='L85'></a><a href='#L85'>85</a>
+<a name='L86'></a><a href='#L86'>86</a>
+<a name='L87'></a><a href='#L87'>87</a>
+<a name='L88'></a><a href='#L88'>88</a>
+<a name='L89'></a><a href='#L89'>89</a>
+<a name='L90'></a><a href='#L90'>90</a>
+<a name='L91'></a><a href='#L91'>91</a>
+<a name='L92'></a><a href='#L92'>92</a>
+<a name='L93'></a><a href='#L93'>93</a>
+<a name='L94'></a><a href='#L94'>94</a>
+<a name='L95'></a><a href='#L95'>95</a>
+<a name='L96'></a><a href='#L96'>96</a>
+<a name='L97'></a><a href='#L97'>97</a>
+<a name='L98'></a><a href='#L98'>98</a>
+<a name='L99'></a><a href='#L99'>99</a>
+<a name='L100'></a><a href='#L100'>100</a>
+<a name='L101'></a><a href='#L101'>101</a>
+<a name='L102'></a><a href='#L102'>102</a>
+<a name='L103'></a><a href='#L103'>103</a>
+<a name='L104'></a><a href='#L104'>104</a>
+<a name='L105'></a><a href='#L105'>105</a>
+<a name='L106'></a><a href='#L106'>106</a>
+<a name='L107'></a><a href='#L107'>107</a>
+<a name='L108'></a><a href='#L108'>108</a>
+<a name='L109'></a><a href='#L109'>109</a>
+<a name='L110'></a><a href='#L110'>110</a>
+<a name='L111'></a><a href='#L111'>111</a>
+<a name='L112'></a><a href='#L112'>112</a>
+<a name='L113'></a><a href='#L113'>113</a>
+<a name='L114'></a><a href='#L114'>114</a>
+<a name='L115'></a><a href='#L115'>115</a>
+<a name='L116'></a><a href='#L116'>116</a>
+<a name='L117'></a><a href='#L117'>117</a>
+<a name='L118'></a><a href='#L118'>118</a>
+<a name='L119'></a><a href='#L119'>119</a>
+<a name='L120'></a><a href='#L120'>120</a>
+<a name='L121'></a><a href='#L121'>121</a>
+<a name='L122'></a><a href='#L122'>122</a>
+<a name='L123'></a><a href='#L123'>123</a>
+<a name='L124'></a><a href='#L124'>124</a>
+<a name='L125'></a><a href='#L125'>125</a>
+<a name='L126'></a><a href='#L126'>126</a>
+<a name='L127'></a><a href='#L127'>127</a>
+<a name='L128'></a><a href='#L128'>128</a>
+<a name='L129'></a><a href='#L129'>129</a>
+<a name='L130'></a><a href='#L130'>130</a>
+<a name='L131'></a><a href='#L131'>131</a>
+<a name='L132'></a><a href='#L132'>132</a>
+<a name='L133'></a><a href='#L133'>133</a>
+<a name='L134'></a><a href='#L134'>134</a>
+<a name='L135'></a><a href='#L135'>135</a>
+<a name='L136'></a><a href='#L136'>136</a>
+<a name='L137'></a><a href='#L137'>137</a>
+<a name='L138'></a><a href='#L138'>138</a>
+<a name='L139'></a><a href='#L139'>139</a>
+<a name='L140'></a><a href='#L140'>140</a>
+<a name='L141'></a><a href='#L141'>141</a>
+<a name='L142'></a><a href='#L142'>142</a>
+<a name='L143'></a><a href='#L143'>143</a>
+<a name='L144'></a><a href='#L144'>144</a>
+<a name='L145'></a><a href='#L145'>145</a>
+<a name='L146'></a><a href='#L146'>146</a>
+<a name='L147'></a><a href='#L147'>147</a>
+<a name='L148'></a><a href='#L148'>148</a>
+<a name='L149'></a><a href='#L149'>149</a>
+<a name='L150'></a><a href='#L150'>150</a>
+<a name='L151'></a><a href='#L151'>151</a>
+<a name='L152'></a><a href='#L152'>152</a>
+<a name='L153'></a><a href='#L153'>153</a>
+<a name='L154'></a><a href='#L154'>154</a>
+<a name='L155'></a><a href='#L155'>155</a>
+<a name='L156'></a><a href='#L156'>156</a>
+<a name='L157'></a><a href='#L157'>157</a>
+<a name='L158'></a><a href='#L158'>158</a>
+<a name='L159'></a><a href='#L159'>159</a>
+<a name='L160'></a><a href='#L160'>160</a>
+<a name='L161'></a><a href='#L161'>161</a>
+<a name='L162'></a><a href='#L162'>162</a>
+<a name='L163'></a><a href='#L163'>163</a>
+<a name='L164'></a><a href='#L164'>164</a>
+<a name='L165'></a><a href='#L165'>165</a>
+<a name='L166'></a><a href='#L166'>166</a>
+<a name='L167'></a><a href='#L167'>167</a>
+<a name='L168'></a><a href='#L168'>168</a>
+<a name='L169'></a><a href='#L169'>169</a>
+<a name='L170'></a><a href='#L170'>170</a>
+<a name='L171'></a><a href='#L171'>171</a>
+<a name='L172'></a><a href='#L172'>172</a>
+<a name='L173'></a><a href='#L173'>173</a>
+<a name='L174'></a><a href='#L174'>174</a>
+<a name='L175'></a><a href='#L175'>175</a>
+<a name='L176'></a><a href='#L176'>176</a>
+<a name='L177'></a><a href='#L177'>177</a>
+<a name='L178'></a><a href='#L178'>178</a>
+<a name='L179'></a><a href='#L179'>179</a>
+<a name='L180'></a><a href='#L180'>180</a>
+<a name='L181'></a><a href='#L181'>181</a>
+<a name='L182'></a><a href='#L182'>182</a>
+<a name='L183'></a><a href='#L183'>183</a>
+<a name='L184'></a><a href='#L184'>184</a>
+<a name='L185'></a><a href='#L185'>185</a>
+<a name='L186'></a><a href='#L186'>186</a>
+<a name='L187'></a><a href='#L187'>187</a>
+<a name='L188'></a><a href='#L188'>188</a>
+<a name='L189'></a><a href='#L189'>189</a>
+<a name='L190'></a><a href='#L190'>190</a>
+<a name='L191'></a><a href='#L191'>191</a>
+<a name='L192'></a><a href='#L192'>192</a>
+<a name='L193'></a><a href='#L193'>193</a>
+<a name='L194'></a><a href='#L194'>194</a>
+<a name='L195'></a><a href='#L195'>195</a>
+<a name='L196'></a><a href='#L196'>196</a>
+<a name='L197'></a><a href='#L197'>197</a>
+<a name='L198'></a><a href='#L198'>198</a>
+<a name='L199'></a><a href='#L199'>199</a>
+<a name='L200'></a><a href='#L200'>200</a>
+<a name='L201'></a><a href='#L201'>201</a>
+<a name='L202'></a><a href='#L202'>202</a>
+<a name='L203'></a><a href='#L203'>203</a>
+<a name='L204'></a><a href='#L204'>204</a>
+<a name='L205'></a><a href='#L205'>205</a>
+<a name='L206'></a><a href='#L206'>206</a>
+<a name='L207'></a><a href='#L207'>207</a>
+<a name='L208'></a><a href='#L208'>208</a>
+<a name='L209'></a><a href='#L209'>209</a>
+<a name='L210'></a><a href='#L210'>210</a>
+<a name='L211'></a><a href='#L211'>211</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import { FontAwesome } from "@expo/vector-icons";</span>
+import * as ImagePicker from 'expo-image-picker';
+import { ImageInfo } from "expo-image-picker/build/ImagePicker.types";
+<span class="cstat-no" title="statement not covered" >import React, { memo, useEffect, useState } from "react";</span>
+<span class="cstat-no" title="statement not covered" >import { ActivityIndicator, Dimensions, Image, Platform, SafeAreaView, Text, TextInput, TouchableOpacity, View } from 'react-native';</span>
+<span class="cstat-no" title="statement not covered" >import { ScrollView } from "react-native-gesture-handler";</span>
+<span class="cstat-no" title="statement not covered" >import Modal from 'react-native-modal';</span>
+import { checkMultiple, PERMISSIONS, RESULTS } from "react-native-permissions";
+<span class="cstat-no" title="statement not covered" >import Picker from 'react-native-picker-select';</span>
+<span class="cstat-no" title="statement not covered" >import { Landmark, LMPhoto, useLandmarks } from "../../../hooks/useLandmarks";</span>
+<span class="cstat-no" title="statement not covered" >import { colors, getMediaPermissions, lmTypes } from "../../../utils/GlobalUtils";</span>
+<span class="cstat-no" title="statement not covered" >import { IconButton, SecondaryButton } from "../../Buttons";</span>
+<span class="cstat-no" title="statement not covered" >import { PhotoPicker } from "../../PhotoPicker";</span>
+&nbsp;
+/**
+ * Props for the {@link AddLandmarkPanel} component.
+ */
+export interface AddLandmarkProps {
+    /**
+     * Whether the landmark is being added at the current users location
+     */
+     landmarkAtCurrentLocation?: boolean;
+    /**
+     * The {@link landmark} object to be added.
+     */
+    newLandmark?: Landmark;
+    /**
+     * The state updater for the new {@link landmark} to be added.
+     */
+    setNewLandmark: (landmark: Landmark) =&gt; void;
+    /**
+     * A call back that toggles the visibility state of the {@link AddLandmarkPanel} modal. Passed down from {@link AddLandmarkPanel}.
+     */
+    setVisible: (state: boolean) =&gt; void;
+    visible: boolean;
+}
+&nbsp;
+/**
+ * Component that renders a form for adding a new {@link Landmark}. Contained within a [react-native-modal]{@link https://github.com/react-native-modal/react-native-modal}.
+ * @component
+ * @category Map
+ */
+const AddLandmarkPanel: React.FC&lt;AddLandmarkProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >({</span>newLandmark, setNewLandmark, setVisible, visible}) =&gt; {</span>
+    const [photos, setPhotos] = <span class="cstat-no" title="statement not covered" >useState&lt;LMPhoto[]&gt;([])</span>
+    const [photoSourceMenuOpened, togglePhotoSourceMenu] = <span class="cstat-no" title="statement not covered" >useState&lt;boolean&gt;(false)</span>
+&nbsp;
+    const { 
+        addLandmarkAsync, 
+        resetAddLm, 
+        addLandmarkStatus, 
+    } = <span class="cstat-no" title="statement not covered" >useLandmarks();</span>
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+        /**
+         * Resets the {@link addLandmarkAsync} mutation on successful add.
+         * Embedded in a useEffect that listens to the {@link addLandmarkStatus} value from the {@link useLandmarks} hook.
+         * @memberOf AddLandmark
+         */
+        const resetAddMutationOnSuccess = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >            <span class="missing-if-branch" title="if path not taken" >I</span>if (addLandmarkStatus == 'success') {</span>
+<span class="cstat-no" title="statement not covered" >                resetAddLm();</span>
+            }
+        }
+<span class="cstat-no" title="statement not covered" >        resetAddMutationOnSuccess();</span>
+    }, [addLandmarkStatus]);
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    useEffect(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        resetAddLm();</span>
+    }, [visible]);
+&nbsp;
+    /**
+     * Calls {@link addLandmarkAsync} from {@link useLandmarks} to initate the process of adding a landmark, then closes the modal.
+     */
+    const submit = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        await addLandmarkAsync({landmarkValue: newLandmark, photos: photos})</span>
+<span class="cstat-no" title="statement not covered" >        close()</span>
+    }
+&nbsp;
+    /**
+     * Closes the modal.
+     */
+    const close = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        setPhotos([])</span>
+<span class="cstat-no" title="statement not covered" >        setVisible(false)</span>
+<span class="cstat-no" title="statement not covered" >        togglePhotoSourceMenu(false)</span>
+<span class="cstat-no" title="statement not covered" >        setNewLandmark({})</span>
+    }
+&nbsp;
+    const addPhoto = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(r</span>esult: ImageInfo) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        togglePhotoSourceMenu(false)</span>
+        const photo: LMPhoto = <span class="cstat-no" title="statement not covered" >{id: '', image_b64: 'data:image/png;base64,' + result.base64, height: result.height, width: result.width, landmark: ''}</span>
+<span class="cstat-no" title="statement not covered" >        setPhotos([...photos, photo])</span>
+    }
+&nbsp;
+    const deletePhoto = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(i</span>ndex: number) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >        setPhotos(photos.filter(<span class="fstat-no" title="function not covered" >(p</span>hoto, i) =&gt; <span class="cstat-no" title="statement not covered" >i != index)</span>)</span>
+    }
+&nbsp;
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;Modal
+            useNativeDriver={true}
+            useNativeDriverForBackdrop={true}
+            
+            testID="addLMModal"
+            avoidKeyboard={photos.length == 0}
+            onBackdropPress={close}
+            style={{justifyContent: "flex-end", height: '100%', margin: 0}}
+            isVisible={visible} &gt;
+            &lt;SafeAreaView style={{backgroundColor: colors.red, height: photos.length&gt;0 ? Dimensions.get('window').height * .8 : Dimensions.get('window').height * .6}}&gt;
+                {addLandmarkStatus == 'idle' ?
+                &lt;&gt;
+                    &lt;View style={{
+                        justifyContent: 'space-between', 
+                        alignItems: 'center', 
+                        flexDirection: "row", 
+                        marginBottom: 15, 
+                        borderBottomWidth: 1, 
+                        borderBottomColor: 'white', 
+                        paddingHorizontal: 20, 
+                        paddingVertical: 10}}&gt;
+                        &lt;Text style={{color: 'white', fontSize: 15}}&gt;Add landmark here?&lt;/Text&gt;
+                        &lt;FontAwesome name="times" color='white' size={25} onPress={close} /&gt;
+                    &lt;/View&gt;
+                    &lt;ScrollView&gt;
+                        &lt;View style={{paddingHorizontal: 20, paddingBottom: 20 }}&gt;
+                            &lt;TextInput
+                                returnKeyType="done"
+                                blurOnSubmit={true}
+                                multiline={true} 
+                                style={{backgroundColor: 'white', textAlignVertical: 'top', paddingHorizontal: 10, paddingTop: 10, paddingBottom: 10, marginBottom: 20, height: 150}} 
+                                placeholder="Description"
+                                onChangeText={<span class="fstat-no" title="function not covered" >value </span>=&gt; <span class="cstat-no" title="statement not covered" >setNewLandmark({...newLandmark, description: value})}</span>&gt;
+                                {newLandmark?.description}
+                            &lt;/TextInput&gt;
+                            &lt;View style={{flexDirection: 'row'}}&gt;
+                                &lt;Picker
+                                    style={{
+                                        inputIOS: {color: 'white'}, 
+                                        inputAndroid: {color: 'white'},
+                                        viewContainer: {marginVertical: 5, flex: 1}, placeholder: {color: 'white'}}}
+                                    textInputProps={{placeholderTextColor: 'white', selectionColor: 'white'}}
+                                    Icon={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >&lt;FontAwesome name="chevron-down" color='white' size={20} /&gt;}</span>
+                                    placeholder={{label: "Select a landmark type...", value: 0}}
+                                    value={newLandmark?.landmark_type}
+                                    onValueChange={<span class="fstat-no" title="function not covered" >(v</span>alue) =&gt; {
+<span class="cstat-no" title="statement not covered" >                                        if (value) {</span>
+<span class="cstat-no" title="statement not covered" >                                            setNewLandmark({...newLandmark, landmark_type: value, title: lmTypes[value].label})</span>
+                                        }
+                                        else {
+<span class="cstat-no" title="statement not covered" >                                            setNewLandmark({...newLandmark, landmark_type: undefined, title: 'no title'})</span>
+                                        }
+                                    }}
+                                    useNativeAndroidPickerStyle={true}
+                                    items={Object.keys(lmTypes)?.map(<span class="fstat-no" title="function not covered" >icon </span> =&gt; {
+<span class="cstat-no" title="statement not covered" >                                        return (</span>
+                                            {label: lmTypes[parseInt(icon)]?.label.toUpperCase(), value: icon, key: icon}
+                                        )})}
+                                /&gt;
+                                {newLandmark?.landmark_type ? &lt;Image style={{marginLeft: 20}} source={lmTypes[newLandmark.landmark_type].image}/&gt;
+                                : null}
+                            &lt;/View&gt;
+                        &lt;/View&gt;
+                        {newLandmark?.landmark_type ?
+                        &lt;View style={{justifyContent: 'flex-end', flexDirection: 'row', paddingHorizontal: 20, marginTop: 5}}&gt;
+                            {newLandmark.description &amp;&amp; newLandmark.title ?
+                            &lt;View style={{flexDirection: 'row' }}&gt;
+                                &lt;TouchableOpacity onPress={<span class="fstat-no" title="function not covered" >async </span>() =&gt; <span class="cstat-no" title="statement not covered" >await submit()}</span>&gt;&lt;Text style={{color: 'white', marginRight: 25}}&gt;Add&lt;/Text&gt;&lt;/TouchableOpacity&gt;
+                                &lt;TouchableOpacity onPress={close}&gt;&lt;Text style={{color: 'white',  marginRight: 25}}&gt;Cancel&lt;/Text&gt;&lt;/TouchableOpacity&gt;
+                                {photos.length == 0 ? &lt;TouchableOpacity onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >togglePhotoSourceMenu(true)}</span>&gt;&lt;Text style={{color: 'white'}}&gt;Include photos&lt;/Text&gt;&lt;/TouchableOpacity&gt; : null }
+                            &lt;/View&gt; : null}
+                        &lt;/View&gt; : null}
+                        {photos?.length ? 
+                        &lt;View&gt;
+                            &lt;ScrollView style={{borderTopWidth: 1, borderColor: 'lightgray', paddingTop: 20, marginHorizontal: 20, flexDirection: 'row', marginBottom: 5, marginTop: 30}} horizontal={true}&gt;
+                                {photos.map(<span class="fstat-no" title="function not covered" >(p</span>hoto, i) =&gt; {
+<span class="cstat-no" title="statement not covered" >                                    return (</span>
+                                        &lt;View key={i} style={{marginHorizontal: 1, padding: 15}}&gt;
+                                            &lt;IconButton style={{position: 'absolute', top: 0, right: 0, zIndex: 10, }} icon="times-circle" color="lightgray" size={20} onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >deletePhoto(i)}</span> /&gt;
+                                            &lt;Image style={{borderWidth: 1, alignSelf: 'center', height: 200, width: 200 * photo.width / photo.height}} source={{uri: photo.image_b64}} /&gt; 
+                                        &lt;/View&gt;
+                                    )
+                                })}
+                                {photos.length &lt; 5 ? &lt;IconButton style={{alignSelf: 'center', padding: 10, opacity: .5, marginLeft: 10}} color='white' size={30} icon="plus" onPress={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >togglePhotoSourceMenu(true)}</span> /&gt; : null}
+                            &lt;/ScrollView&gt;
+                        &lt;/View&gt; : null}
+                    &lt;/ScrollView&gt;
+                &lt;/&gt; :
+                &lt;View style={{height: '100%', justifyContent: "space-evenly", alignItems: "center"}}&gt;
+                    &lt;Text style={{color: 'white', fontSize: 20}}&gt;{
+                        addLandmarkStatus == "loading" ? 'Uploading landmark...' :
+                        addLandmarkStatus == "error" ? 'Something went wrong when trying to upload the landmark.' : null }
+                    &lt;/Text&gt;
+                    {
+                        addLandmarkStatus == "loading" ? &lt;ActivityIndicator color='white' size="large"/&gt; :
+                        addLandmarkStatus == "error" ? &lt;SecondaryButton text="Okay" onPress={close}/&gt; : null
+                    }
+                &lt;/View&gt; }
+            &lt;/SafeAreaView&gt;
+            &lt;PhotoPicker multiple={true} menuType='alert' photoSourceMenuOpened={photoSourceMenuOpened} onReceivedPhotoResult={<span class="fstat-no" title="function not covered" >result </span>=&gt; <span class="cstat-no" title="statement not covered" >addPhoto(result)}</span> cancel={<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >togglePhotoSourceMenu(false)}</span> /&gt;
+        &lt;/Modal&gt;
+    )
+}
+&nbsp;
+<span class="cstat-no" title="statement not covered" >export default memo(AddLandmarkPanel);</span></pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../sorter.js"></script>
+        <script src="../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

+ 214 - 0
coverage/lcov-report/atlas-mobile-ts/src/components/Map/Panels/FilterPanel/FilterLmTypes.tsx.html

@@ -0,0 +1,214 @@
+
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>Code coverage report for atlas-mobile-ts/src/components/Map/Panels/FilterPanel/FilterLmTypes.tsx</title>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="../../../../../../prettify.css" />
+    <link rel="stylesheet" href="../../../../../../base.css" />
+    <link rel="shortcut icon" type="image/x-icon" href="../../../../../../favicon.png" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <style type='text/css'>
+        .coverage-summary .sorter {
+            background-image: url(../../../../../../sort-arrow-sprite.png);
+        }
+    </style>
+</head>
+    
+<body>
+<div class='wrapper'>
+    <div class='pad1'>
+        <h1><a href="../../../../../../index.html">All files</a> / <a href="index.html">atlas-mobile-ts/src/components/Map/Panels/FilterPanel</a> FilterLmTypes.tsx</h1>
+        <div class='clearfix'>
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Statements</span>
+                <span class='fraction'>0/9</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">100% </span>
+                <span class="quiet">Branches</span>
+                <span class='fraction'>0/0</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Functions</span>
+                <span class='fraction'>0/3</span>
+            </div>
+        
+            
+            <div class='fl pad1y space-right2'>
+                <span class="strong">0% </span>
+                <span class="quiet">Lines</span>
+                <span class='fraction'>0/8</span>
+            </div>
+        
+            
+        </div>
+        <p class="quiet">
+            Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
+        </p>
+        <template id="filterTemplate">
+            <div class="quiet">
+                Filter:
+                <input oninput="onInput()" type="search" id="fileSearch">
+            </div>
+        </template>
+    </div>
+    <div class='status-line low'></div>
+    <pre><table class="coverage">
+<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
+<a name='L2'></a><a href='#L2'>2</a>
+<a name='L3'></a><a href='#L3'>3</a>
+<a name='L4'></a><a href='#L4'>4</a>
+<a name='L5'></a><a href='#L5'>5</a>
+<a name='L6'></a><a href='#L6'>6</a>
+<a name='L7'></a><a href='#L7'>7</a>
+<a name='L8'></a><a href='#L8'>8</a>
+<a name='L9'></a><a href='#L9'>9</a>
+<a name='L10'></a><a href='#L10'>10</a>
+<a name='L11'></a><a href='#L11'>11</a>
+<a name='L12'></a><a href='#L12'>12</a>
+<a name='L13'></a><a href='#L13'>13</a>
+<a name='L14'></a><a href='#L14'>14</a>
+<a name='L15'></a><a href='#L15'>15</a>
+<a name='L16'></a><a href='#L16'>16</a>
+<a name='L17'></a><a href='#L17'>17</a>
+<a name='L18'></a><a href='#L18'>18</a>
+<a name='L19'></a><a href='#L19'>19</a>
+<a name='L20'></a><a href='#L20'>20</a>
+<a name='L21'></a><a href='#L21'>21</a>
+<a name='L22'></a><a href='#L22'>22</a>
+<a name='L23'></a><a href='#L23'>23</a>
+<a name='L24'></a><a href='#L24'>24</a>
+<a name='L25'></a><a href='#L25'>25</a>
+<a name='L26'></a><a href='#L26'>26</a>
+<a name='L27'></a><a href='#L27'>27</a>
+<a name='L28'></a><a href='#L28'>28</a>
+<a name='L29'></a><a href='#L29'>29</a>
+<a name='L30'></a><a href='#L30'>30</a>
+<a name='L31'></a><a href='#L31'>31</a>
+<a name='L32'></a><a href='#L32'>32</a>
+<a name='L33'></a><a href='#L33'>33</a>
+<a name='L34'></a><a href='#L34'>34</a>
+<a name='L35'></a><a href='#L35'>35</a>
+<a name='L36'></a><a href='#L36'>36</a>
+<a name='L37'></a><a href='#L37'>37</a>
+<a name='L38'></a><a href='#L38'>38</a>
+<a name='L39'></a><a href='#L39'>39</a>
+<a name='L40'></a><a href='#L40'>40</a>
+<a name='L41'></a><a href='#L41'>41</a>
+<a name='L42'></a><a href='#L42'>42</a>
+<a name='L43'></a><a href='#L43'>43</a>
+<a name='L44'></a><a href='#L44'>44</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-no">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span>
+<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/* Copyright (C) Click &amp; Push Accessibility, Inc - All Rights Reserved
+ * Unauthorized copying of this file, via any medium is strictly prohibited
+ * Proprietary and confidential
+ * Written and maintained by the Click &amp; Push Development team 
+ * &lt;dev@clicknpush.ca&gt;, January 2022
+ */
+&nbsp;
+<span class="cstat-no" title="statement not covered" >import React from "react"</span>
+<span class="cstat-no" title="statement not covered" >import { View, Text } from "react-native"</span>
+<span class="cstat-no" title="statement not covered" >import Select from "react-native-multiple-select"</span>
+<span class="cstat-no" title="statement not covered" >import { lmTypes } from "../../../../utils/GlobalUtils"</span>
+&nbsp;
+interface FilterLmTypesProps {
+    localFilterTypes: number[],
+    setLocalFilterTypes: (types: number[]) =&gt; void
+}
+&nbsp;
+/**
+ * Component that offers a selector for landmark types to be filtered
+ */
+export const <span class="cstat-no" title="statement not covered" >FilterLmTypes: React.FC&lt;FilterLmTypesProps&gt; = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(</span>{</span>setLocalFilterTypes, localFilterTypes}) =&gt; {</span>
+<span class="cstat-no" title="statement not covered" >    return (</span>
+        &lt;View style={{marginBottom: 10, justifyContent: 'flex-start'}}&gt;
+            &lt;Text style={{marginRight: 10, marginBottom: 5}}&gt;Landmark type:&lt;/Text&gt;
+            &lt;View style={{width: '100%', justifyContent: 'center'}}&gt;
+                &lt;Select
+                    textColor='black'  
+                    itemTextColor='black'
+                    displayKey="label"
+                    uniqueKey="value"
+                    submitButtonText="Confirm"
+                    submitButtonColor='black'
+                    onSelectedItemsChange={<span class="fstat-no" title="function not covered" >(t</span>ypes) =&gt; {
+<span class="cstat-no" title="statement not covered" >                        setLocalFilterTypes(types)</span>
+                    }}
+                    selectedItems={localFilterTypes}
+                    items={Object.keys(lmTypes)?.map(<span class="fstat-no" title="function not covered" >icon </span>=&gt; {
+<span class="cstat-no" title="statement not covered" >                        return (</span>
+                            {label: lmTypes[parseInt(icon)].label.toUpperCase(), value: parseInt(icon), key: icon}
+                        )})} /&gt;
+            &lt;/View&gt;
+        &lt;/View&gt; 
+    )
+}</pre></td></tr></table></pre>
+
+                <div class='push'></div><!-- for sticky footer -->
+            </div><!-- /wrapper -->
+            <div class='footer quiet pad2 space-top1 center small'>
+                Code coverage generated by
+                <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
+                at Fri Mar 11 2022 14:05:36 GMT-0700 (Mountain Standard Time)
+            </div>
+        <script src="../../../../../../prettify.js"></script>
+        <script>
+            window.onload = function () {
+                prettyPrint();
+            };
+        </script>
+        <script src="../../../../../../sorter.js"></script>
+        <script src="../../../../../../block-navigation.js"></script>
+    </body>
+</html>
+    

Some files were not shown because too many files changed in this diff