@lion/ui 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. package/components/core/src/SlotMixin.js +180 -42
  2. package/components/core/test/SlotMixin.test.js +355 -145
  3. package/components/core/types/SlotMixinTypes.ts +12 -1
  4. package/components/input-tel/src/LionInputTel.js +0 -9
  5. package/components/input-tel-dropdown/src/LionInputTelDropdown.js +32 -29
  6. package/components/input-tel-dropdown/test-suites/LionInputTelDropdown.suite.js +5 -6
  7. package/components/localize/src/number/parseNumber.js +15 -36
  8. package/components/localize/test/number/parseNumber.test.js +3 -12
  9. package/components/localize/types/LocalizeMixinTypes.ts +1 -1
  10. package/custom-elements.json +1435 -133
  11. package/dist-types/components/calendar/src/LionCalendar.d.ts +1 -37
  12. package/dist-types/components/calendar/src/LionCalendar.d.ts.map +1 -1
  13. package/dist-types/components/core/src/SlotMixin.d.ts +2 -0
  14. package/dist-types/components/core/src/SlotMixin.d.ts.map +1 -1
  15. package/dist-types/components/core/test/SlotMixin.test.d.ts +1 -1
  16. package/dist-types/components/core/test/SlotMixin.test.d.ts.map +1 -1
  17. package/dist-types/components/core/types/SlotMixinTypes.d.ts +9 -1
  18. package/dist-types/components/core/types/SlotMixinTypes.d.ts.map +1 -1
  19. package/dist-types/components/input-amount/src/LionInputAmount.d.ts +1 -37
  20. package/dist-types/components/input-amount/src/LionInputAmount.d.ts.map +1 -1
  21. package/dist-types/components/input-date/src/LionInputDate.d.ts +1 -37
  22. package/dist-types/components/input-date/src/LionInputDate.d.ts.map +1 -1
  23. package/dist-types/components/input-datepicker/src/LionCalendarOverlayFrame.d.ts +1 -37
  24. package/dist-types/components/input-datepicker/src/LionCalendarOverlayFrame.d.ts.map +1 -1
  25. package/dist-types/components/input-email/src/LionInputEmail.d.ts +1 -37
  26. package/dist-types/components/input-email/src/LionInputEmail.d.ts.map +1 -1
  27. package/dist-types/components/input-iban/src/LionInputIban.d.ts +1 -37
  28. package/dist-types/components/input-iban/src/LionInputIban.d.ts.map +1 -1
  29. package/dist-types/components/input-tel/src/LionInputTel.d.ts +1 -42
  30. package/dist-types/components/input-tel/src/LionInputTel.d.ts.map +1 -1
  31. package/dist-types/components/input-tel-dropdown/src/LionInputTelDropdown.d.ts +14 -8
  32. package/dist-types/components/input-tel-dropdown/src/LionInputTelDropdown.d.ts.map +1 -1
  33. package/dist-types/components/input-tel-dropdown/test-suites/LionInputTelDropdown.suite.d.ts.map +1 -1
  34. package/dist-types/components/localize/src/LocalizeMixin.d.ts +1 -37
  35. package/dist-types/components/localize/src/LocalizeMixin.d.ts.map +1 -1
  36. package/dist-types/components/localize/src/number/parseNumber.d.ts.map +1 -1
  37. package/dist-types/components/localize/types/LocalizeMixinTypes.d.ts +1 -1
  38. package/dist-types/components/localize/types/LocalizeMixinTypes.d.ts.map +1 -1
  39. package/dist-types/components/pagination/src/LionPagination.d.ts +1 -37
  40. package/dist-types/components/pagination/src/LionPagination.d.ts.map +1 -1
  41. package/dist-types/components/progress-indicator/src/LionProgressIndicator.d.ts +1 -37
  42. package/dist-types/components/progress-indicator/src/LionProgressIndicator.d.ts.map +1 -1
  43. package/dist-types/exports/core.d.ts +1 -0
  44. package/dist-types/exports/core.d.ts.map +1 -1
  45. package/dist-types/exports/form-core.d.ts +2 -0
  46. package/dist-types/exports/form-core.d.ts.map +1 -1
  47. package/dist-types/exports/input-tel-dropdown.d.ts +2 -0
  48. package/dist-types/exports/input-tel-dropdown.d.ts.map +1 -1
  49. package/dist-types/exports/input-tel.d.ts +1 -0
  50. package/dist-types/exports/input-tel.d.ts.map +1 -1
  51. package/dist-types/exports/localize.d.ts +3 -0
  52. package/dist-types/exports/localize.d.ts.map +1 -1
  53. package/dist-types/exports/overlays.d.ts +4 -0
  54. package/dist-types/exports/overlays.d.ts.map +1 -1
  55. package/dist-types/tsconfig.tsbuildinfo +1 -1
  56. package/docs/components/accordion/index.md +3 -0
  57. package/docs/components/accordion/overview.md +129 -0
  58. package/docs/components/accordion/reference.md +47 -0
  59. package/docs/components/accordion/use-cases.md +252 -0
  60. package/docs/components/button/examples.md +30 -0
  61. package/docs/components/button/index.md +3 -0
  62. package/docs/components/button/overview.md +30 -0
  63. package/docs/components/button/src/icon.svg.js +5 -0
  64. package/docs/components/button/use-cases.md +106 -0
  65. package/docs/components/calendar/index.md +3 -0
  66. package/docs/components/calendar/overview.md +49 -0
  67. package/docs/components/calendar/use-cases.md +192 -0
  68. package/docs/components/checkbox-group/index.md +3 -0
  69. package/docs/components/checkbox-group/overview.md +40 -0
  70. package/docs/components/checkbox-group/use-cases.md +256 -0
  71. package/docs/components/collapsible/assets/CustomCollapsible.js +113 -0
  72. package/docs/components/collapsible/assets/applyDemoCollapsibleStyles.js +37 -0
  73. package/docs/components/collapsible/examples.md +83 -0
  74. package/docs/components/collapsible/index.md +3 -0
  75. package/docs/components/collapsible/overview.md +39 -0
  76. package/docs/components/collapsible/use-cases.md +79 -0
  77. package/docs/components/combobox/examples.md +153 -0
  78. package/docs/components/combobox/index.md +3 -0
  79. package/docs/components/combobox/overview.md +51 -0
  80. package/docs/components/combobox/src/LinkMixin.js +60 -0
  81. package/docs/components/combobox/src/demo-selection-display.js +191 -0
  82. package/docs/components/combobox/src/gh-combobox/gh-button.js +69 -0
  83. package/docs/components/combobox/src/gh-combobox/gh-combobox.js +508 -0
  84. package/docs/components/combobox/src/google-combobox/assets/google-clear-icon.js +9 -0
  85. package/docs/components/combobox/src/google-combobox/assets/google-search-icon.js +9 -0
  86. package/docs/components/combobox/src/google-combobox/assets/google-voice-search-icon.js +19 -0
  87. package/docs/components/combobox/src/google-combobox/assets/googlelogo_color_272x92dp.png +0 -0
  88. package/docs/components/combobox/src/google-combobox/google-combobox.js +460 -0
  89. package/docs/components/combobox/src/lazyRender.js +29 -0
  90. package/docs/components/combobox/src/levenshtein.js +95 -0
  91. package/docs/components/combobox/src/md-combobox/MdFieldMixin.js +341 -0
  92. package/docs/components/combobox/src/md-combobox/md-combobox.js +89 -0
  93. package/docs/components/combobox/src/md-combobox/md-input.js +5 -0
  94. package/docs/components/combobox/src/md-combobox/style/load-roboto.js +6 -0
  95. package/docs/components/combobox/src/md-combobox/style/md-ripple.js +81 -0
  96. package/docs/components/combobox/src/wa-combobox/wa-combobox.js +368 -0
  97. package/docs/components/combobox/use-cases.md +377 -0
  98. package/docs/components/dialog/index.md +3 -0
  99. package/docs/components/dialog/overview.md +63 -0
  100. package/docs/components/dialog/src/demo-dialog-style.js +3 -0
  101. package/docs/components/dialog/src/demoStyle.js +39 -0
  102. package/docs/components/dialog/src/slots-dialog-content.js +32 -0
  103. package/docs/components/dialog/src/styled-dialog-content.js +38 -0
  104. package/docs/components/dialog/use-cases.md +154 -0
  105. package/docs/components/drawer/index.md +3 -0
  106. package/docs/components/drawer/overview.md +68 -0
  107. package/docs/components/drawer/src/demoStyle.js +71 -0
  108. package/docs/components/drawer/use-cases.md +194 -0
  109. package/docs/components/fieldset/index.md +3 -0
  110. package/docs/components/fieldset/overview.md +49 -0
  111. package/docs/components/fieldset/use-cases.md +185 -0
  112. package/docs/components/form/index.md +3 -0
  113. package/docs/components/form/overview.md +43 -0
  114. package/docs/components/form/use-cases.md +72 -0
  115. package/docs/components/icon/assets/bugs/bug01.svg.js +2 -0
  116. package/docs/components/icon/assets/bugs/bug02.svg.js +2 -0
  117. package/docs/components/icon/assets/bugs/bug05.svg.js +2 -0
  118. package/docs/components/icon/assets/bugs/bug06.svg.js +2 -0
  119. package/docs/components/icon/assets/bugs/bug08.svg.js +2 -0
  120. package/docs/components/icon/assets/bugs/bug12.svg.js +2 -0
  121. package/docs/components/icon/assets/bugs/bug19.svg.js +2 -0
  122. package/docs/components/icon/assets/bugs/bug23.svg.js +2 -0
  123. package/docs/components/icon/assets/bugs/bug24.svg.js +2 -0
  124. package/docs/components/icon/assets/iconset-bugs.js +11 -0
  125. package/docs/components/icon/assets/iconset-misc.js +3 -0
  126. package/docs/components/icon/assets/iconset-space.js +31 -0
  127. package/docs/components/icon/assets/misc/arrowLeft.svg.js +6 -0
  128. package/docs/components/icon/assets/space/aliens-spaceship.svg.js +2 -0
  129. package/docs/components/icon/assets/space/meteor.svg.js +2 -0
  130. package/docs/components/icon/assets/space/moon-flag.svg.js +2 -0
  131. package/docs/components/icon/assets/space/moon.svg.js +2 -0
  132. package/docs/components/icon/assets/space/night.svg.js +2 -0
  133. package/docs/components/icon/assets/space/orbit.svg.js +2 -0
  134. package/docs/components/icon/assets/space/planet.svg.js +2 -0
  135. package/docs/components/icon/assets/space/robot.svg.js +2 -0
  136. package/docs/components/icon/assets/space/rocket.svg.js +2 -0
  137. package/docs/components/icon/assets/space/satellite.svg.js +2 -0
  138. package/docs/components/icon/assets/space/signal.svg.js +2 -0
  139. package/docs/components/icon/assets/space/space-helmet.svg.js +2 -0
  140. package/docs/components/icon/assets/space/sun.svg.js +2 -0
  141. package/docs/components/icon/assets/space/telescope.svg.js +2 -0
  142. package/docs/components/icon/index.md +3 -0
  143. package/docs/components/icon/overview.md +40 -0
  144. package/docs/components/icon/use-cases.md +93 -0
  145. package/docs/components/index.md +7 -0
  146. package/docs/components/input/index.md +3 -0
  147. package/docs/components/input/overview.md +36 -0
  148. package/docs/components/input/use-cases.md +77 -0
  149. package/docs/components/input-amount/index.md +3 -0
  150. package/docs/components/input-amount/overview.md +49 -0
  151. package/docs/components/input-amount/use-cases.md +122 -0
  152. package/docs/components/input-date/index.md +3 -0
  153. package/docs/components/input-date/overview.md +39 -0
  154. package/docs/components/input-date/use-cases.md +83 -0
  155. package/docs/components/input-datepicker/index.md +3 -0
  156. package/docs/components/input-datepicker/overview.md +42 -0
  157. package/docs/components/input-datepicker/use-cases.md +78 -0
  158. package/docs/components/input-email/index.md +3 -0
  159. package/docs/components/input-email/overview.md +32 -0
  160. package/docs/components/input-email/use-cases.md +48 -0
  161. package/docs/components/input-iban/index.md +3 -0
  162. package/docs/components/input-iban/overview.md +37 -0
  163. package/docs/components/input-iban/use-cases.md +102 -0
  164. package/docs/components/input-range/index.md +3 -0
  165. package/docs/components/input-range/overview.md +34 -0
  166. package/docs/components/input-range/use-cases.md +108 -0
  167. package/docs/components/input-stepper/index.md +3 -0
  168. package/docs/components/input-stepper/overview.md +36 -0
  169. package/docs/components/input-stepper/use-cases.md +41 -0
  170. package/docs/components/input-tel/index.md +3 -0
  171. package/docs/components/input-tel/overview.md +62 -0
  172. package/docs/components/input-tel/src/h-region-code-table.js +109 -0
  173. package/docs/components/input-tel/use-cases.md +307 -0
  174. package/docs/components/input-tel-dropdown/examples.md +32 -0
  175. package/docs/components/input-tel-dropdown/index.md +3 -0
  176. package/docs/components/input-tel-dropdown/overview.md +38 -0
  177. package/docs/components/input-tel-dropdown/src/intl-input-tel-dropdown.js +127 -0
  178. package/docs/components/input-tel-dropdown/use-cases.md +159 -0
  179. package/docs/components/listbox/index.md +3 -0
  180. package/docs/components/listbox/overview.md +42 -0
  181. package/docs/components/listbox/src/listboxData.js +65 -0
  182. package/docs/components/listbox/use-cases.md +147 -0
  183. package/docs/components/pagination/index.md +3 -0
  184. package/docs/components/pagination/overview.md +29 -0
  185. package/docs/components/pagination/use-cases.md +99 -0
  186. package/docs/components/progress-indicator/assets/my-determinate-progress-bar.js +30 -0
  187. package/docs/components/progress-indicator/assets/my-indeterminate-progress-spinner.js +55 -0
  188. package/docs/components/progress-indicator/examples.md +125 -0
  189. package/docs/components/progress-indicator/index.md +3 -0
  190. package/docs/components/progress-indicator/overview.md +36 -0
  191. package/docs/components/radio-group/index.md +3 -0
  192. package/docs/components/radio-group/overview.md +46 -0
  193. package/docs/components/radio-group/use-cases.md +140 -0
  194. package/docs/components/select/index.md +3 -0
  195. package/docs/components/select/overview.md +44 -0
  196. package/docs/components/select/use-cases.md +55 -0
  197. package/docs/components/select-rich/examples.md +31 -0
  198. package/docs/components/select-rich/index.md +3 -0
  199. package/docs/components/select-rich/overview.md +46 -0
  200. package/docs/components/select-rich/src/flagStyles.js +1250 -0
  201. package/docs/components/select-rich/src/flags.png +0 -0
  202. package/docs/components/select-rich/src/flags@2x.png +0 -0
  203. package/docs/components/select-rich/src/intl-select-rich.js +194 -0
  204. package/docs/components/select-rich/src/regionMetaList.js +1717 -0
  205. package/docs/components/select-rich/use-cases.md +370 -0
  206. package/docs/components/steps/index.md +3 -0
  207. package/docs/components/steps/overview.md +63 -0
  208. package/docs/components/steps/use-cases.md +163 -0
  209. package/docs/components/switch/index.md +3 -0
  210. package/docs/components/switch/overview.md +75 -0
  211. package/docs/components/switch/reference.md +39 -0
  212. package/docs/components/switch/use-cases.md +76 -0
  213. package/docs/components/tabs/examples.md +23 -0
  214. package/docs/components/tabs/index.md +3 -0
  215. package/docs/components/tabs/overview.md +48 -0
  216. package/docs/components/tabs/src/lea-tab-panel.js +24 -0
  217. package/docs/components/tabs/src/lea-tab.js +45 -0
  218. package/docs/components/tabs/src/lea-tabs.js +28 -0
  219. package/docs/components/tabs/use-cases.md +219 -0
  220. package/docs/components/textarea/index.md +3 -0
  221. package/docs/components/textarea/overview.md +35 -0
  222. package/docs/components/textarea/use-cases.md +95 -0
  223. package/docs/components/tooltip/examples.md +39 -0
  224. package/docs/components/tooltip/index.md +3 -0
  225. package/docs/components/tooltip/overview.md +44 -0
  226. package/docs/components/tooltip/use-cases.md +208 -0
  227. package/docs/fundamentals/index.md +19 -0
  228. package/docs/fundamentals/node-tools/babel-plugin-extend-docs/index.md +1 -0
  229. package/docs/fundamentals/node-tools/babel-plugin-extend-docs/overview.md +233 -0
  230. package/docs/fundamentals/node-tools/index.md +1 -0
  231. package/docs/fundamentals/node-tools/providence-analytics/LocalConfiguration.md +68 -0
  232. package/docs/fundamentals/node-tools/providence-analytics/QueryResult.md +111 -0
  233. package/docs/fundamentals/node-tools/providence-analytics/analyzer.md +69 -0
  234. package/docs/fundamentals/node-tools/providence-analytics/assets/_mermaid.svg.js +1202 -0
  235. package/docs/fundamentals/node-tools/providence-analytics/dashboard.md +22 -0
  236. package/docs/fundamentals/node-tools/providence-analytics/index.md +1 -0
  237. package/docs/fundamentals/node-tools/providence-analytics/overview.md +192 -0
  238. package/docs/fundamentals/node-tools/publish-docs/index.md +1 -0
  239. package/docs/fundamentals/node-tools/publish-docs/overview.md +136 -0
  240. package/docs/fundamentals/node-tools/remark-extend/index.md +1 -0
  241. package/docs/fundamentals/node-tools/remark-extend/overview.md +274 -0
  242. package/docs/fundamentals/node-tools/rocket-preset-extend-lion-docs/index.md +1 -0
  243. package/docs/fundamentals/node-tools/rocket-preset-extend-lion-docs/overview.md +285 -0
  244. package/docs/fundamentals/rationales/TypeScript.md +18 -0
  245. package/docs/fundamentals/rationales/index.md +1 -0
  246. package/docs/fundamentals/rationales/side-effects.md +203 -0
  247. package/docs/fundamentals/rationales/versioning.md +35 -0
  248. package/docs/fundamentals/systems/core/index.md +3 -0
  249. package/docs/fundamentals/systems/core/overview.md +85 -0
  250. package/docs/fundamentals/systems/form/assets/FormatMixinDiagram-1.svg +1 -0
  251. package/docs/fundamentals/systems/form/assets/FormatMixinDiagram-2.svg +1 -0
  252. package/docs/fundamentals/systems/form/assets/FormatMixinDiagram-3.svg +84 -0
  253. package/docs/fundamentals/systems/form/assets/h-output.js +155 -0
  254. package/docs/fundamentals/systems/form/formatting-and-parsing.md +245 -0
  255. package/docs/fundamentals/systems/form/index.md +3 -0
  256. package/docs/fundamentals/systems/form/interaction-states.md +177 -0
  257. package/docs/fundamentals/systems/form/model-value.md +35 -0
  258. package/docs/fundamentals/systems/form/overview.md +82 -0
  259. package/docs/fundamentals/systems/form/styling.md +101 -0
  260. package/docs/fundamentals/systems/form/use-cases.md +156 -0
  261. package/docs/fundamentals/systems/form/validate.md +929 -0
  262. package/docs/fundamentals/systems/icon/index.md +3 -0
  263. package/docs/fundamentals/systems/icon/overview.md +124 -0
  264. package/docs/fundamentals/systems/index.md +1 -0
  265. package/docs/fundamentals/systems/localize/assets/all-locales.js +437 -0
  266. package/docs/fundamentals/systems/localize/assets/en-AU.js +6 -0
  267. package/docs/fundamentals/systems/localize/assets/en-GB.js +6 -0
  268. package/docs/fundamentals/systems/localize/assets/en-US.js +6 -0
  269. package/docs/fundamentals/systems/localize/assets/en.js +4 -0
  270. package/docs/fundamentals/systems/localize/assets/nl-BE.js +6 -0
  271. package/docs/fundamentals/systems/localize/assets/nl-NL.js +6 -0
  272. package/docs/fundamentals/systems/localize/assets/nl.js +4 -0
  273. package/docs/fundamentals/systems/localize/dates.md +195 -0
  274. package/docs/fundamentals/systems/localize/index.md +3 -0
  275. package/docs/fundamentals/systems/localize/numbers.md +217 -0
  276. package/docs/fundamentals/systems/localize/overview.md +48 -0
  277. package/docs/fundamentals/systems/localize/rationale.md +62 -0
  278. package/docs/fundamentals/systems/localize/text.md +125 -0
  279. package/docs/fundamentals/systems/localize/use-cases.md +319 -0
  280. package/docs/fundamentals/systems/overlays/assets/applyDemoOverlayStyles.js +22 -0
  281. package/docs/fundamentals/systems/overlays/assets/demo-overlay-backdrop.js +48 -0
  282. package/docs/fundamentals/systems/overlays/assets/demo-overlay-system.js +42 -0
  283. package/docs/fundamentals/systems/overlays/assets/umbrella-form.js +133 -0
  284. package/docs/fundamentals/systems/overlays/configuration.md +453 -0
  285. package/docs/fundamentals/systems/overlays/form-integration.md +65 -0
  286. package/docs/fundamentals/systems/overlays/index.md +3 -0
  287. package/docs/fundamentals/systems/overlays/overview.md +118 -0
  288. package/docs/fundamentals/systems/overlays/rationale.md +232 -0
  289. package/docs/fundamentals/systems/overlays/scope.md +176 -0
  290. package/docs/fundamentals/systems/overlays/use-cases.md +699 -0
  291. package/docs/fundamentals/tools/ajax/assets/naga.json +9 -0
  292. package/docs/fundamentals/tools/ajax/assets/pabu.json +9 -0
  293. package/docs/fundamentals/tools/ajax/index.md +3 -0
  294. package/docs/fundamentals/tools/ajax/overview.md +128 -0
  295. package/docs/fundamentals/tools/ajax/use-cases.md +456 -0
  296. package/docs/fundamentals/tools/helpers/action-logger.md +165 -0
  297. package/docs/fundamentals/tools/helpers/index.md +3 -0
  298. package/docs/fundamentals/tools/helpers/overview.md +30 -0
  299. package/docs/fundamentals/tools/index.md +1 -0
  300. package/docs/fundamentals/tools/singleton-manager/index.md +3 -0
  301. package/docs/fundamentals/tools/singleton-manager/overview.md +304 -0
  302. package/docs/guides/how-to/create-a-custom-field.md +200 -0
  303. package/docs/guides/how-to/extend-a-native-input.md +66 -0
  304. package/docs/guides/how-to/get-started.md +77 -0
  305. package/docs/guides/how-to/index.md +1 -0
  306. package/docs/guides/index.md +34 -0
  307. package/docs/guides/principles/definitions-and-terms.md +41 -0
  308. package/docs/guides/principles/index.md +26 -0
  309. package/docs/guides/principles/scoped-elements.md +103 -0
  310. package/docs/guides/principles/styling.md +32 -0
  311. package/docs/guides/principles/subclasser-apis.md +28 -0
  312. package/docs/override.js +15 -0
  313. package/exports/core.js +2 -0
  314. package/exports/form-core.js +3 -0
  315. package/exports/input-tel-dropdown.js +3 -0
  316. package/exports/input-tel.js +2 -0
  317. package/exports/localize.js +4 -0
  318. package/exports/overlays.js +5 -0
  319. package/package.json +3 -2
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1785.66 819.68"><defs><style>.a,.i{font-size:36px;}.a,.ba,.m,.o,.t{font-family:INGMe, ING Me;}.b{letter-spacing:-0.01em;}.c{letter-spacing:0em;}.d{letter-spacing:-0.07em;}.e{font-size:19px;}.f{letter-spacing:-0.01em;}.g{letter-spacing:0em;}.h{letter-spacing:-0.02em;}.ab,.at,.av,.aw,.i,.z{font-family:INGMe-Bold, ING Me;font-weight:700;}.j{letter-spacing:-0.06em;}.k{fill:none;stroke:#000;stroke-miterlimit:10;stroke-width:3px;}.ab,.aw,.l,.x{opacity:0.4;}.m,.o,.t{font-size:26px;}.at,.aw,.m,.w,.x{fill:#0071bc;}.n{letter-spacing:-0.01em;}.o,.v{fill:#22b573;}.p{letter-spacing:-0.03em;}.q{letter-spacing:0em;}.r{letter-spacing:-0.03em;}.s{letter-spacing:-0.01em;}.t,.y{fill:#f7931e;}.u{letter-spacing:0em;}.ab,.at,.aw,.ba,.z{font-size:20px;}.aa{letter-spacing:0.02em;}.ac{letter-spacing:-0.02em;}.ad,.am{letter-spacing:-0.01em;}.ae{letter-spacing:0em;}.af{letter-spacing:-0.01em;}.ag{letter-spacing:-0.02em;}.ah,.an{letter-spacing:0em;}.ai{letter-spacing:-0.01em;}.aj{fill:#4d4d4d;}.ak,.ao{letter-spacing:-0.06em;}.ak,.al,.am,.an{fill:#000;}.ap{letter-spacing:-0.02em;}.aq{letter-spacing:-0.01em;}.ar{letter-spacing:-0.02em;}.as{letter-spacing:-0.05em;}.au{letter-spacing:0.02em;}.av{font-size:28px;fill:#fff;}.ax{letter-spacing:-0.01em;}.ay{letter-spacing:0em;}.az{letter-spacing:-0.01em;}.bb{letter-spacing:-0.03em;}.bc{letter-spacing:0em;}.bd{letter-spacing:-0.01em;}</style></defs><text class="a" transform="translate(427.63 691.15)"><tspan class="b">f</tspan><tspan x="11.23" y="0">ormat</tspan><tspan class="c" x="111.17" y="0">t</tspan><tspan x="124.16" y="0">ed</tspan><tspan class="d" x="164.45" y="0">V</tspan><tspan x="183.99" y="0">alue</tspan></text><text class="a" transform="translate(507.79 117.15)">User<tspan class="e"><tspan x="-51.2" y="22.8">(input</tspan><tspan class="f" x="-1.16" y="22.8">E</tspan><tspan class="g" x="8.8" y="22.8">lement.input)</tspan></tspan></text><text class="a" transform="translate(501.16 311.15)"><tspan class="h">v</tspan><tspan x="16.92" y="0">alue</tspan></text><text class="i" transform="translate(446.1 498.15)">model<tspan class="j" x="103.86" y="0">V</tspan><tspan x="124.49" y="0">alue</tspan></text><text class="a" transform="translate(18.03 498.15)">seriali<tspan class="b" x="93.63" y="0">z</tspan><tspan x="109.37" y="0">ed</tspan><tspan class="d" x="149.65" y="0">V</tspan><tspan x="169.2" y="0">alue</tspan></text><line class="k" x1="544.49" y1="242.37" x2="544.49" y2="168.78"/><polygon points="555.6 233.94 544.49 238.66 533.38 233.94 544.49 260.28 555.6 233.94"/><line class="k" x1="574.49" y1="260.28" x2="574.49" y2="186.69"/><polygon points="585.6 195.11 574.49 190.39 563.38 195.11 574.49 168.78 585.6 195.11"/><line class="k" x1="544.49" y1="421.37" x2="544.49" y2="347.78"/><polygon points="555.6 412.94 544.49 417.66 533.38 412.94 544.49 439.28 555.6 412.94"/><line class="k" x1="542.49" y1="614.37" x2="542.49" y2="540.78"/><polygon points="553.6 605.94 542.49 610.66 531.38 605.94 542.49 632.28 553.6 605.94"/><path class="k" d="M459,528.28S314.29,677.72,161,540.59" transform="translate(-1.01)"/><polygon points="173.8 538.19 162.76 543.07 158.6 554.4 146.99 528.28 173.8 538.19"/><path class="k" d="M635.09,307.52c71.85,31,340.21,166.77,60.41,365.26" transform="translate(-1.01)"/><polygon points="637.6 321.09 637.47 309.02 646.07 300.55 617.49 300.78 637.6 321.09"/><g class="l"><path class="k" d="M148,439.5s144.71-149.44,298-12.32" transform="translate(-1.01)"/><polygon points="431.18 429.58 442.23 424.71 446.39 413.38 457.99 439.5 431.18 429.58"/></g><text class="m" transform="translate(554.77 393.17)">parser</text><text class="m" transform="translate(243.77 632.17)">seriali<tspan class="n" x="67.62" y="0">z</tspan><tspan x="78.99" y="0">er</tspan></text><g class="l"><text class="m" transform="translate(243.77 356.17)">deseriali<tspan class="n" x="96.72" y="0">z</tspan><tspan x="108.08" y="0">er</tspan></text></g><text class="o" transform="translate(473.77 200.17)">sync</text><text class="o" transform="translate(394.77 257.17)">p<tspan class="p" x="14.56" y="0">r</tspan><tspan class="q" x="23.01" y="0">ep</tspan><tspan class="r" x="51.71" y="0">r</tspan><tspan x="60.16" y="0">o</tspan><tspan class="s" x="74.91" y="0">c</tspan><tspan x="87.25" y="0">ess</tspan></text><text class="t" transform="translate(805.77 647.17)">on-blur</text><text class="o" transform="translate(591.77 206.17)">delega<tspan class="u" x="78.7" y="0">t</tspan><tspan x="88.09" y="0">e</tspan></text><text class="o" transform="translate(772.77 382.17)">sync</text><text class="m" transform="translate(554.77 573.17)"><tspan class="n">f</tspan><tspan x="8.11" y="0">ormat</tspan><tspan class="u" x="80.29" y="0">t</tspan><tspan class="q" x="89.67" y="0">er</tspan></text><circle class="v" cx="447.99" cy="195.28" r="16.97"/><circle class="v" cx="716.99" cy="206.28" r="16.97"/><circle class="w" cx="576.49" cy="345.78" r="16.97"/><circle class="x" cx="218.49" cy="323.78" r="16.97"/><circle class="w" cx="218.49" cy="636.78" r="16.97"/><circle class="w" cx="576.49" cy="598.78" r="16.97"/><circle class="y" cx="780.99" cy="641.28" r="16.97"/><text class="z" transform="translate(775.07 648.53)">5</text><text class="t" transform="translate(429.77 80.17)">in<tspan class="u" x="21.09" y="0">t</tspan><tspan x="30.47" y="0">e</tspan><tspan class="r" x="44.62" y="0">r</tspan><tspan x="53.07" y="0">a</tspan><tspan class="aa" x="67.75" y="0">c</tspan><tspan x="80.78" y="0">t</tspan></text><circle class="y" cx="404.99" cy="74.28" r="16.97"/><text class="z" transform="translate(399.07 80.53)">1</text><text class="z" transform="translate(442.07 202.53)">2</text><text class="z" transform="translate(570.07 353.53)">3</text><text class="z" transform="translate(570.07 605.53)">4</text><text class="z" transform="translate(212.07 643.53)">4</text><text class="ab" transform="translate(213.07 330.53)">5</text><text class="z" transform="translate(711.07 213.53)">7</text><circle class="v" cx="755.99" cy="345.28" r="16.97"/><text class="z" transform="translate(750.07 352.53)">6</text><text class="z" transform="translate(964.02 117.02)"><tspan xml:space="preserve">1. User changes the input </tspan><tspan x="0" y="96">2. Nati</tspan><tspan class="ac" x="60.28" y="96">v</tspan><tspan x="70.24" y="96">e input syncs with </tspan><tspan x="0" y="120" xml:space="preserve"> lion-input-da</tspan><tspan class="ad" x="140.2" y="120">t</tspan><tspan class="ae" x="148.22" y="120">e </tspan><tspan class="af" x="164.1" y="120">v</tspan><tspan x="174.06" y="120">alue and </tspan><tspan x="0" y="144" xml:space="preserve"> gets p</tspan><tspan class="ag" x="75.64" y="144">r</tspan><tspan x="82.76" y="144">ep</tspan><tspan class="ag" x="105.32" y="144">r</tspan><tspan class="ah" x="112.44" y="144">o</tspan><tspan class="ai" x="123.84" y="144">c</tspan><tspan class="ae" x="133.64" y="144">essed</tspan><tspan class="aj"><tspan x="0" y="192">3. </tspan><tspan class="ak" x="21.26" y="192">V</tspan><tspan class="al" x="32.72" y="192">alue is parsed </tspan><tspan class="am" x="164.5" y="192">t</tspan><tspan class="al" x="172.52" y="192">o model</tspan><tspan class="ak" x="246.42" y="192">V</tspan><tspan class="an" x="257.88" y="192">alue</tspan></tspan><tspan x="0" y="288">4. model</tspan><tspan class="ao" x="78.96" y="288">V</tspan><tspan x="90.42" y="288">alue is </tspan><tspan class="ap" x="154.56" y="288">f</tspan><tspan class="ah" x="161.7" y="288">ormat</tspan><tspan class="ad" x="218.38" y="288">t</tspan><tspan x="226.4" y="288">ed </tspan><tspan class="aq" x="254" y="288">t</tspan><tspan class="ah" x="262.02" y="288">o </tspan><tspan x="0" y="312" xml:space="preserve"> </tspan><tspan class="ar" x="19.2" y="312">f</tspan><tspan x="26.34" y="312">ormat</tspan><tspan class="aq" x="83.02" y="312">t</tspan><tspan x="91.04" y="312">ed</tspan><tspan class="ao" x="113.84" y="312">V</tspan><tspan class="ah" x="125.3" y="312">alue and </tspan><tspan x="0" y="336" xml:space="preserve"> model</tspan><tspan class="ao" x="76.9" y="336">V</tspan><tspan x="88.36" y="336">alue is seriali</tspan><tspan class="aq" x="208.26" y="336">z</tspan><tspan x="217.04" y="336">ed </tspan><tspan class="ad" x="244.63" y="336">t</tspan><tspan x="252.66" y="336">o</tspan><tspan x="0" y="360" xml:space="preserve"> seriali</tspan><tspan class="aq" x="74.96" y="360">z</tspan><tspan x="83.74" y="360">ed</tspan><tspan class="ao" x="106.54" y="360">V</tspan><tspan class="ah" x="118" y="360">alue</tspan><tspan x="0" y="384" xml:space="preserve"> </tspan><tspan x="0" y="432">5. User blurs the field.</tspan><tspan x="0" y="456" xml:space="preserve"> Input gets </tspan><tspan class="ac" x="117.68" y="456">v</tspan><tspan x="127.64" y="456">alida</tspan><tspan class="aq" x="173.32" y="456">t</tspan><tspan x="181.34" y="456">ed by</tspan><tspan x="0" y="480" xml:space="preserve"> </tspan><tspan class="ao" x="19.2" y="480">V</tspan><tspan x="30.66" y="480">alida</tspan><tspan class="aq" x="76.34" y="480">t</tspan><tspan x="84.36" y="480">eMixin</tspan><tspan x="0" y="528">6. </tspan><tspan class="ap" x="21.26" y="528">f</tspan><tspan class="ah" x="28.4" y="528">ormat</tspan><tspan class="aq" x="85.08" y="528">t</tspan><tspan x="93.1" y="528">ed</tspan><tspan class="ao" x="115.9" y="528">V</tspan><tspan x="127.36" y="528">alue syn</tspan><tspan class="ai" x="204.72" y="528">c</tspan><tspan x="214.52" y="528">ed</tspan><tspan x="0" y="552" xml:space="preserve"> back </tspan><tspan class="aq" x="67.2" y="552">t</tspan><tspan class="ah" x="75.22" y="552">o the </tspan><tspan class="af" x="127.16" y="552">v</tspan><tspan x="137.12" y="552">alue</tspan><tspan x="0" y="576" xml:space="preserve"> (p</tspan><tspan class="ag" x="37.44" y="576">r</tspan><tspan class="af" x="44.56" y="576">ev</tspan><tspan class="ae" x="65.3" y="576">ent</tspan><tspan class="ar" x="96.26" y="576">R</tspan><tspan class="ae" x="107.86" y="576">ecursi</tspan><tspan class="af" x="162.8" y="576">v</tspan><tspan class="ae" x="172.76" y="576">e</tspan><tspan class="as" x="183.84" y="576">T</tspan><tspan x="193.54" y="576">rigger</tspan><tspan x="0" y="600" xml:space="preserve"> p</tspan><tspan class="ag" x="35.48" y="600">r</tspan><tspan class="af" x="42.6" y="600">ev</tspan><tspan x="63.34" y="600">ents infini</tspan><tspan class="aq" x="155.02" y="600">t</tspan><tspan x="163.04" y="600">e looping)</tspan><tspan x="0" y="648">7. </tspan><tspan class="ao" x="21.26" y="648">V</tspan><tspan x="32.72" y="648">alue is delega</tspan><tspan class="aq" x="159.36" y="648">t</tspan><tspan x="167.38" y="648">ed back </tspan><tspan class="aq" x="242.98" y="648">t</tspan><tspan class="ah" x="251" y="648">o </tspan><tspan x="0" y="672" xml:space="preserve"> nati</tspan><tspan class="ac" x="55.92" y="672">v</tspan><tspan x="65.88" y="672">e input </tspan><tspan class="af" x="134.86" y="672">v</tspan><tspan x="144.82" y="672">alue </tspan><tspan x="0" y="696" xml:space="preserve"> (what the user sees)</tspan></text><text class="at" transform="translate(1333.02 117.02)"><tspan xml:space="preserve"> “10/30/2010”</tspan><tspan x="0" y="96">“10/30/2010”</tspan><tspan x="0" y="192">[Da</tspan><tspan class="aq" x="31.54" y="192">t</tspan><tspan x="39.56" y="192">eO</tspan><tspan class="ai" x="64.62" y="192">b</tspan><tspan x="75.88" y="192">je</tspan><tspan class="au" x="92.44" y="192">c</tspan><tspan x="102.72" y="192">t] </tspan><tspan x="0" y="288">“30-10-2010”</tspan><tspan x="0" y="336">“2010-10-30T00:00:00.000Z”</tspan><tspan x="0" y="432">“30-10-2010”</tspan><tspan x="0" y="528">“30-10-2010”</tspan><tspan x="0" y="648">“30-10-2010”</tspan></text><text class="z" transform="translate(1530.02 117.02)"> <tspan class="aj" x="4.8" y="0" xml:space="preserve">@user-input-changed </tspan><tspan x="0" y="96"> </tspan><tspan class="aj"><tspan x="0" y="192">@model-</tspan><tspan class="ac" x="81.98" y="192">v</tspan><tspan class="ah" x="91.94" y="192" xml:space="preserve">alue-changed </tspan><tspan x="0" y="288">@</tspan><tspan class="ap" x="16.54" y="288">f</tspan><tspan class="ah" x="23.68" y="288">ormat</tspan><tspan class="aq" x="80.36" y="288">t</tspan><tspan x="88.38" y="288">ed-</tspan><tspan class="af" x="118.92" y="288">v</tspan><tspan x="128.88" y="288">alue-changed</tspan><tspan x="0" y="360">@seriali</tspan><tspan class="aq" x="72.3" y="360">z</tspan><tspan x="81.08" y="360">ed-</tspan><tspan class="af" x="111.62" y="360">v</tspan><tspan x="121.58" y="360">alue-changed</tspan><tspan x="0" y="384" xml:space="preserve"> </tspan></tspan></text><text class="av" transform="translate(1239.49 594.78)">!</text><text class="aw" transform="translate(54.99 259.83)"><tspan xml:space="preserve"> [Da</tspan><tspan class="ax" x="55.54" y="0">t</tspan><tspan x="63.56" y="0">eO</tspan><tspan class="ai" x="88.62" y="0">b</tspan><tspan class="ay" x="99.88" y="0">je</tspan><tspan class="au" x="116.44" y="0">c</tspan><tspan x="126.72" y="0">t]</tspan></text><g class="l"><path d="M4.93,196.92a9.66,9.66,0,0,1,1,0,4.14,4.14,0,0,1,3.16,1.2,4.22,4.22,0,0,1,.83,1.34,4.71,4.71,0,0,1,.31,1.78,5,5,0,0,1-.4,2.08,4.33,4.33,0,0,1-1.11,1.51,4.78,4.78,0,0,1-1.69.93,7,7,0,0,1-2.14.32,8.05,8.05,0,0,1-2.05-.26,6,6,0,0,1-1.63-.66.35.35,0,0,1-.12-.48l.54-1.14a.29.29,0,0,1,.44-.16,6.9,6.9,0,0,0,1.36.5A6.42,6.42,0,0,0,5,204a3.16,3.16,0,0,0,1.21-.21,2.34,2.34,0,0,0,1.36-1.44,3.3,3.3,0,0,0,.17-1.05,2.44,2.44,0,0,0-.71-2,3,3,0,0,0-2-.6,9,9,0,0,0-1.38.11,14.66,14.66,0,0,0-1.52.33q-.36.1-.36-.24v-7.22a.27.27,0,0,1,.3-.3H9.34a.27.27,0,0,1,.3.3v1.48a.27.27,0,0,1-.3.3H4v3.58A5.38,5.38,0,0,1,4.93,196.92Z" transform="translate(-1.01)"/><path d="M13,205.83c-.27,0-.4-.13-.4-.38v-2.08c0-.25.13-.38.4-.38h2.1c.28,0,.42.13.42.38v2.08c0,.25-.14.38-.42.38Z" transform="translate(-1.01)"/><path d="M34.44,198.43a10.9,10.9,0,0,1-.42,3.14A6.85,6.85,0,0,1,32.79,204a5.44,5.44,0,0,1-2,1.53A6.6,6.6,0,0,1,28,206a6.72,6.72,0,0,1-2.42-.42,4.85,4.85,0,0,1-1.89-1.31,6.07,6.07,0,0,1-1.23-2.25,10.62,10.62,0,0,1-.44-3.22,10.9,10.9,0,0,1,.42-3.14,6.85,6.85,0,0,1,1.23-2.39,5.44,5.44,0,0,1,2-1.53,6.6,6.6,0,0,1,2.74-.54,6.72,6.72,0,0,1,2.42.42A4.85,4.85,0,0,1,32.77,193,6.07,6.07,0,0,1,34,195.21,10.62,10.62,0,0,1,34.44,198.43Zm-2.62.08a6.72,6.72,0,0,0-.9-3.9,2.93,2.93,0,0,0-2.52-1.24,3.16,3.16,0,0,0-2.76,1.38,7,7,0,0,0-1,4,6.72,6.72,0,0,0,.9,3.9,2.93,2.93,0,0,0,2.52,1.24,3.16,3.16,0,0,0,2.76-1.38A7,7,0,0,0,31.82,198.51Z" transform="translate(-1.01)"/><path d="M38.8,195.57a1.54,1.54,0,0,1,.05.35l0,.43a3.85,3.85,0,0,1,1.3-.92,4.17,4.17,0,0,1,1.74-.36,4.23,4.23,0,0,1,1.6.28,3.17,3.17,0,0,1,1.18.8,3.22,3.22,0,0,1,.74,1.33,7.08,7.08,0,0,1,.22,2v6.08c0,.21-.11.32-.34.32H43.6c-.23,0-.34-.11-.34-.32v-5.3c0-.36,0-.67,0-.93a5.54,5.54,0,0,0-.07-.67,1.83,1.83,0,0,0-.14-.48,1.69,1.69,0,0,0-.23-.36,1.92,1.92,0,0,0-1.54-.52,3.37,3.37,0,0,0-.87.12,2.16,2.16,0,0,0-.75.34,1.15,1.15,0,0,0-.4.46,2.27,2.27,0,0,0-.16.72,8.7,8.7,0,0,0,0,1v5.65c0,.21-.11.32-.34.32H37c-.23,0-.34-.11-.34-.32v-6.26c0-.41,0-.82,0-1.23s0-.78,0-1.11,0-.62,0-.85,0-.39,0-.47.11-.32.34-.32H38.4A.36.36,0,0,1,38.8,195.57Z" transform="translate(-1.01)"/><path d="M53.48,205.83c-.23,0-.34-.11-.34-.32v-6.26c0-.41,0-.82,0-1.23s0-.78,0-1.11,0-.62,0-.85,0-.39,0-.47.11-.32.34-.32h1.54a.38.38,0,0,1,.27.07.49.49,0,0,1,.11.23c0,.25.07.57.1,1s.05.72.06,1a5.78,5.78,0,0,1,1.25-1.76,2.42,2.42,0,0,1,1.69-.68.84.84,0,0,1,.45.09.37.37,0,0,1,.13.33v1.36c0,.24-.11.37-.34.38a3.3,3.3,0,0,0-1.42.49,3.11,3.11,0,0,0-1,1,4.21,4.21,0,0,0-.31.64,3.92,3.92,0,0,0-.2.77,8.61,8.61,0,0,0-.1,1q0,.59,0,1.38v2.94c0,.21-.11.32-.34.32Z" transform="translate(-1.01)"/><path d="M64.72,206a5.69,5.69,0,0,1-2.25-.4,4.3,4.3,0,0,1-1.57-1.11,4.78,4.78,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.33,5.33,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.83,4.83,0,0,1,2-.4,4.46,4.46,0,0,1,2,.4A4,4,0,0,1,68,196.59a4.92,4.92,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,1.92,1.92,0,0,1-.1.78.34.34,0,0,1-.32.2H62.16a2.57,2.57,0,0,0,2.9,2.52,5.83,5.83,0,0,0,1.32-.17,6.83,6.83,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,0,.35c0,.09-.1.16-.23.23a7.19,7.19,0,0,1-1.69.68A7.78,7.78,0,0,1,64.72,206Zm-.14-8.9a2,2,0,0,0-1.64.7,3.52,3.52,0,0,0-.76,1.8h4.5a3.7,3.7,0,0,0-.16-.95,2.38,2.38,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.79,1.79,0,0,0,64.58,197.13Z" transform="translate(-1.01)"/><path d="M77.58,205a3,3,0,0,1-1.22.8,4.39,4.39,0,0,1-1.48.26,4,4,0,0,1-1.77-.38,3.53,3.53,0,0,1-1.29-1.08,5.18,5.18,0,0,1-.8-1.67,7.62,7.62,0,0,1-.28-2.15,6.66,6.66,0,0,1,.39-2.33,5.26,5.26,0,0,1,1.09-1.8,4.7,4.7,0,0,1,1.7-1.15,5.78,5.78,0,0,1,2.2-.4,8.27,8.27,0,0,1,1.9.22,6.14,6.14,0,0,1,1.58.56.63.63,0,0,1,.3.28,1.12,1.12,0,0,1,.08.46v8c0,.53,0,1.07,0,1.62s0,1.07.07,1.57.07,1,.1,1.38.07.78.11,1.07-.09.42-.4.42H78.4a.59.59,0,0,1-.37-.09.53.53,0,0,1-.15-.29,5.79,5.79,0,0,1-.11-.77c0-.34-.07-.74-.1-1.2s-.06-1-.07-1.54S77.58,205.61,77.58,205Zm-2.1-1a2.67,2.67,0,0,0,.86-.14,1.77,1.77,0,0,0,.68-.42,1.75,1.75,0,0,0,.43-.81,5.36,5.36,0,0,0,.13-1.33v-3.92a4.21,4.21,0,0,0-.72-.18,4.81,4.81,0,0,0-.74-.06,2.62,2.62,0,0,0-2,.78,3,3,0,0,0-.66,1.14,5.23,5.23,0,0,0-.24,1.68,4.74,4.74,0,0,0,.51,2.39A1.86,1.86,0,0,0,75.48,204Z" transform="translate(-1.01)"/><path d="M88.06,205.67a4.26,4.26,0,0,1-1.76.36,4.16,4.16,0,0,1-1.58-.28,2.94,2.94,0,0,1-1.16-.8,3.3,3.3,0,0,1-.72-1.33,7.08,7.08,0,0,1-.22-2v-6.08c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32v5.3c0,.36,0,.67,0,.93a5.74,5.74,0,0,0,.06.67,1.52,1.52,0,0,0,.13.48,2.12,2.12,0,0,0,.21.36,1.93,1.93,0,0,0,1.52.52,3.37,3.37,0,0,0,.87-.12,2.16,2.16,0,0,0,.75-.34,1,1,0,0,0,.4-.45,2.41,2.41,0,0,0,.16-.73,8.7,8.7,0,0,0,0-1v-5.65c0-.21.12-.32.36-.32h1.7a.3.3,0,0,1,.34.32v6.26c0,.43,0,.84,0,1.24s0,.77,0,1.1,0,.62,0,.85,0,.39,0,.47-.12.32-.36.32H89.8a.37.37,0,0,1-.27-.07.45.45,0,0,1-.11-.25l-.08-.76A3.67,3.67,0,0,1,88.06,205.67Z" transform="translate(-1.01)"/><path d="M98.86,206a5.69,5.69,0,0,1-2.25-.4A4.3,4.3,0,0,1,95,204.52a4.49,4.49,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.17,5.17,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.8,4.8,0,0,1,2-.4,4.46,4.46,0,0,1,2,.4,4,4,0,0,1,1.41,1.12,5.09,5.09,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,1.92,1.92,0,0,1-.1.78.34.34,0,0,1-.32.2H96.3A2.57,2.57,0,0,0,99.2,204a5.83,5.83,0,0,0,1.32-.17,7.07,7.07,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,0,.35c0,.09-.1.16-.23.23a7.37,7.37,0,0,1-1.69.68A7.84,7.84,0,0,1,98.86,206Zm-.14-8.9a2,2,0,0,0-1.64.7,3.52,3.52,0,0,0-.76,1.8h4.5a3.7,3.7,0,0,0-.16-.95,2.58,2.58,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.79,1.79,0,0,0,98.72,197.13Z" transform="translate(-1.01)"/><path d="M105.44,203.43c.13-.27.32-.33.56-.18a5.85,5.85,0,0,0,1.21.57,4.25,4.25,0,0,0,1.41.23,2.27,2.27,0,0,0,1.3-.35,1.05,1.05,0,0,0,.5-.89.9.9,0,0,0-.5-.82,7.52,7.52,0,0,0-1.64-.58,11.6,11.6,0,0,1-1.18-.38,3.82,3.82,0,0,1-1-.58,2.68,2.68,0,0,1-.72-.88,2.81,2.81,0,0,1-.27-1.3,3,3,0,0,1,.3-1.36,2.8,2.8,0,0,1,.83-1,3.71,3.71,0,0,1,1.26-.62,5.67,5.67,0,0,1,1.59-.21,5.86,5.86,0,0,1,1.79.26,5,5,0,0,1,1.37.68.41.41,0,0,1,.1.6l-.56.88c-.1.15-.19.22-.27.23a.51.51,0,0,1-.31-.09,5.12,5.12,0,0,0-1.09-.46,4.06,4.06,0,0,0-1-.14,2.76,2.76,0,0,0-1.18.24.87.87,0,0,0-.52.86.71.71,0,0,0,.17.5,1.43,1.43,0,0,0,.46.35,4.39,4.39,0,0,0,.65.27l.74.22c.37.11.75.23,1.15.38a4.72,4.72,0,0,1,1.07.56,2.72,2.72,0,0,1,.78.87,2.62,2.62,0,0,1,.3,1.31,3.4,3.4,0,0,1-.31,1.46,3.12,3.12,0,0,1-.85,1.08,3.85,3.85,0,0,1-1.27.67,5.28,5.28,0,0,1-1.55.23,6.92,6.92,0,0,1-2.19-.32A4.69,4.69,0,0,1,105,205a.44.44,0,0,1-.1-.6Z" transform="translate(-1.01)"/><path d="M117.76,195.27h2.46c.21,0,.32.11.32.34v1.22c0,.23-.11.34-.32.34h-2.46v5.14a3.89,3.89,0,0,0,.07.83,1.05,1.05,0,0,0,.25.53,1.19,1.19,0,0,0,1,.34,3.36,3.36,0,0,0,.65-.07l.63-.15a.34.34,0,0,1,.48.24l.28,1a.49.49,0,0,1,0,.34.59.59,0,0,1-.26.22,4.26,4.26,0,0,1-1,.32,6.1,6.1,0,0,1-1.27.14,3.31,3.31,0,0,1-2.32-.72,3.76,3.76,0,0,1-.9-2.84v-5.3H114c-.22,0-.32-.11-.32-.34v-1.22c0-.23.1-.34.32-.34h1.36v-2.78c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32Z" transform="translate(-1.01)"/><path d="M123,198.53c-.27,0-.4-.13-.4-.38v-2.08c0-.25.13-.38.4-.38h2.1c.28,0,.42.13.42.38v2.08c0,.25-.14.38-.42.38Zm0,7.3c-.27,0-.4-.13-.4-.38v-2.08c0-.25.13-.38.4-.38h2.1c.28,0,.42.13.42.38v2.08c0,.25-.14.38-.42.38Z" transform="translate(-1.01)"/><path d="M132.62,203.43c.13-.27.32-.33.56-.18a5.85,5.85,0,0,0,1.21.57,4.25,4.25,0,0,0,1.41.23,2.27,2.27,0,0,0,1.3-.35,1.05,1.05,0,0,0,.5-.89.9.9,0,0,0-.5-.82,7.52,7.52,0,0,0-1.64-.58,11.6,11.6,0,0,1-1.18-.38,3.82,3.82,0,0,1-1-.58,2.68,2.68,0,0,1-.72-.88,2.81,2.81,0,0,1-.27-1.3,3,3,0,0,1,.3-1.36,2.8,2.8,0,0,1,.83-1,3.71,3.71,0,0,1,1.26-.62,5.67,5.67,0,0,1,1.59-.21,5.86,5.86,0,0,1,1.79.26,5,5,0,0,1,1.37.68.41.41,0,0,1,.1.6l-.56.88c-.1.15-.19.22-.27.23a.51.51,0,0,1-.31-.09,5.12,5.12,0,0,0-1.09-.46,4.06,4.06,0,0,0-1-.14,2.76,2.76,0,0,0-1.18.24.87.87,0,0,0-.52.86.71.71,0,0,0,.17.5,1.43,1.43,0,0,0,.46.35,4.39,4.39,0,0,0,.65.27l.74.22c.37.11.75.23,1.15.38a4.72,4.72,0,0,1,1.07.56,2.72,2.72,0,0,1,.78.87,2.62,2.62,0,0,1,.3,1.31,3.4,3.4,0,0,1-.31,1.46,3.12,3.12,0,0,1-.85,1.08,3.85,3.85,0,0,1-1.27.67,5.28,5.28,0,0,1-1.55.23,6.92,6.92,0,0,1-2.19-.32,4.69,4.69,0,0,1-1.49-.76.44.44,0,0,1-.1-.6Z" transform="translate(-1.01)"/><path d="M146.52,206a5.69,5.69,0,0,1-2.25-.4,4.21,4.21,0,0,1-1.57-1.11,4.49,4.49,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.17,5.17,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.8,4.8,0,0,1,2-.4,4.49,4.49,0,0,1,2,.4,4,4,0,0,1,1.41,1.12,5.09,5.09,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,2.12,2.12,0,0,1-.1.78.35.35,0,0,1-.32.2H144a2.89,2.89,0,0,0,.86,1.89,2.93,2.93,0,0,0,2,.63,5.83,5.83,0,0,0,1.32-.17,7.33,7.33,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,.05.35c0,.09-.1.16-.23.23a7.37,7.37,0,0,1-1.69.68A7.84,7.84,0,0,1,146.52,206Zm-.14-8.9a2,2,0,0,0-1.64.7,3.43,3.43,0,0,0-.76,1.8h4.5a4.19,4.19,0,0,0-.16-.95,2.58,2.58,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.82,1.82,0,0,0,146.38,197.13Z" transform="translate(-1.01)"/><path d="M153.48,205.83c-.23,0-.34-.11-.34-.32v-6.26c0-.41,0-.82,0-1.23s0-.78,0-1.11,0-.62,0-.85,0-.39,0-.47.11-.32.34-.32h1.54a.38.38,0,0,1,.27.07.61.61,0,0,1,.11.23c0,.25.07.57.1,1s0,.72.06,1a5.62,5.62,0,0,1,1.25-1.76,2.41,2.41,0,0,1,1.69-.68.84.84,0,0,1,.45.09.39.39,0,0,1,.13.33v1.36a.33.33,0,0,1-.34.38,3.3,3.3,0,0,0-1.42.49,3.11,3.11,0,0,0-1,1,3.44,3.44,0,0,0-.31.64,3.33,3.33,0,0,0-.2.77,8.61,8.61,0,0,0-.1,1q0,.59,0,1.38v2.94a.3.3,0,0,1-.34.32Z" transform="translate(-1.01)"/><path d="M161,193.29c-.24,0-.36-.11-.36-.34v-2c0-.23.12-.34.36-.34h2c.25,0,.38.11.38.34v2c0,.23-.13.34-.38.34Zm.16,12.54c-.23,0-.34-.11-.34-.32v-9.92c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32v9.92a.3.3,0,0,1-.34.32Z" transform="translate(-1.01)"/><path d="M172.92,205.53a2.53,2.53,0,0,1-.17-.46,3.42,3.42,0,0,1-.13-.56,3.43,3.43,0,0,1-1.25,1.11,3.56,3.56,0,0,1-1.67.41,4.12,4.12,0,0,1-1.84-.39,3.65,3.65,0,0,1-1.34-1.09,4.83,4.83,0,0,1-.82-1.67,7.57,7.57,0,0,1-.28-2.13,7.47,7.47,0,0,1,.36-2.4,5.47,5.47,0,0,1,1-1.79,3.93,3.93,0,0,1,1.43-1.11,4.09,4.09,0,0,1,1.74-.38,3.44,3.44,0,0,1,1.56.36,3,3,0,0,1,1.1.88l.06-.68a.36.36,0,0,1,.12-.29.52.52,0,0,1,.32-.07h1.32c.25,0,.38.11.38.32s0,.34,0,.61,0,.58,0,.93,0,.72,0,1.11,0,.78,0,1.15v1.9c0,.59,0,1.13,0,1.62s.06.92.1,1.29.06.66.1.89,0,.37,0,.42a.3.3,0,0,1-.34.32h-1.34A.43.43,0,0,1,172.92,205.53Zm-.58-7.28a2.86,2.86,0,0,0-.9-.81,2.31,2.31,0,0,0-1.12-.29,2.05,2.05,0,0,0-1.78.9,4.44,4.44,0,0,0-.64,2.6,6.73,6.73,0,0,0,.12,1.29,3.24,3.24,0,0,0,.39,1.06,1.93,1.93,0,0,0,.71.71,2.06,2.06,0,0,0,1.06.26,1.85,1.85,0,0,0,.81-.18,2.22,2.22,0,0,0,.63-.46,2.4,2.4,0,0,0,.56-1.09,6.12,6.12,0,0,0,.16-1.33Z" transform="translate(-1.01)"/><path d="M179.92,205.91a2.83,2.83,0,0,1-.95-.15,1.86,1.86,0,0,1-.77-.51,3.53,3.53,0,0,1-.62-2.4v-7c0-1,0-1.75,0-2.37s0-1.12-.05-1.5,0-.66,0-.83a2.88,2.88,0,0,1,0-.36q0-.3.36-.3h1.6a.38.38,0,0,1,.42.32c0,.13.05.38.07.74s0,.8.05,1.31,0,1.09,0,1.74,0,1.32,0,2v6.54a1.08,1.08,0,0,0,.14.64.55.55,0,0,0,.48.2h.2c.12,0,.19,0,.22.07a.76.76,0,0,1,0,.27v.94a.43.43,0,0,1-.22.42,2.49,2.49,0,0,1-.39.14A2.15,2.15,0,0,1,179.92,205.91Z" transform="translate(-1.01)"/><path d="M183.36,193.29c-.24,0-.36-.11-.36-.34v-2c0-.23.12-.34.36-.34h2c.25,0,.38.11.38.34v2c0,.23-.13.34-.38.34Zm.16,12.54c-.23,0-.34-.11-.34-.32v-9.92c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32v9.92a.3.3,0,0,1-.34.32Z" transform="translate(-1.01)"/><path d="M192.36,197.17H188c-.22,0-.32-.12-.32-.36v-1.2c0-.23.1-.34.32-.34h7a.3.3,0,0,1,.34.34v.56a1.64,1.64,0,0,1-.3.94l-4.54,6.82h4.62c.22,0,.34.12.34.36v1.2a.3.3,0,0,1-.34.34h-7.32c-.22,0-.32-.11-.32-.34v-.56a1.64,1.64,0,0,1,.3-.94Z" transform="translate(-1.01)"/><path d="M201.66,206a5.69,5.69,0,0,1-2.25-.4,4.21,4.21,0,0,1-1.57-1.11,4.49,4.49,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.17,5.17,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.8,4.8,0,0,1,2-.4,4.49,4.49,0,0,1,2,.4,4,4,0,0,1,1.41,1.12,5.09,5.09,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,2.12,2.12,0,0,1-.1.78.35.35,0,0,1-.32.2H199.1a2.89,2.89,0,0,0,.86,1.89,2.93,2.93,0,0,0,2,.63,5.83,5.83,0,0,0,1.32-.17,7.33,7.33,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,.05.35c0,.09-.1.16-.23.23a7.37,7.37,0,0,1-1.69.68A7.84,7.84,0,0,1,201.66,206Zm-.14-8.9a2,2,0,0,0-1.64.7,3.43,3.43,0,0,0-.76,1.8h4.5a4.19,4.19,0,0,0-.16-.95,2.58,2.58,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.82,1.82,0,0,0,201.52,197.13Z" transform="translate(-1.01)"/><path d="M216.56,205.89a2.2,2.2,0,0,1-1.05-.25,1.54,1.54,0,0,1-.73-.83,3.22,3.22,0,0,1-1.26.89,4.19,4.19,0,0,1-3.4-.06,3.65,3.65,0,0,1-1.34-1.09,4.83,4.83,0,0,1-.82-1.67,7.57,7.57,0,0,1-.28-2.13,7.47,7.47,0,0,1,.36-2.4,5.31,5.31,0,0,1,1-1.79,4,4,0,0,1,1.44-1.11,4.09,4.09,0,0,1,1.74-.38,3.83,3.83,0,0,1,1.34.24,3.1,3.1,0,0,1,1.06.64v-5.12c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32v12.38a.89.89,0,0,0,.13.55.7.7,0,0,0,.49.21.3.3,0,0,1,.3.34v1a.44.44,0,0,1-.34.46A3.17,3.17,0,0,1,216.56,205.89Zm-2-7.8a2.78,2.78,0,0,0-.92-.7,2.57,2.57,0,0,0-1.08-.24,2.08,2.08,0,0,0-1.79.9,4.36,4.36,0,0,0-.65,2.6,6,6,0,0,0,.13,1.29,3,3,0,0,0,.41,1.06,2,2,0,0,0,.72.71,2.06,2.06,0,0,0,1.06.26,2.89,2.89,0,0,0,.88-.14,1.71,1.71,0,0,0,.7-.42,1.63,1.63,0,0,0,.42-.79,6,6,0,0,0,.12-1.35Z" transform="translate(-1.01)"/><path d="M223.24,197.25c.37,1.24.7,2.37,1,3.39l.78,2.73c.22-.8.48-1.69.77-2.68s.62-2.12,1-3.4l1.62-5.48a.49.49,0,0,1,.54-.38h1.66c.28,0,.37.15.28.44l-4.42,13.6a.71.71,0,0,1-.19.28.7.7,0,0,1-.37.08h-1.84a.72.72,0,0,1-.38-.08.49.49,0,0,1-.18-.28L219,191.83a.29.29,0,0,1,0-.29.3.3,0,0,1,.26-.11h1.82a.5.5,0,0,1,.54.38Z" transform="translate(-1.01)"/><path d="M238.36,205.53a2.53,2.53,0,0,1-.17-.46,3.42,3.42,0,0,1-.13-.56,3.43,3.43,0,0,1-1.25,1.11,3.56,3.56,0,0,1-1.67.41,4.12,4.12,0,0,1-1.84-.39,3.65,3.65,0,0,1-1.34-1.09,4.83,4.83,0,0,1-.82-1.67,7.57,7.57,0,0,1-.28-2.13,7.47,7.47,0,0,1,.36-2.4,5.47,5.47,0,0,1,1-1.79,3.93,3.93,0,0,1,1.43-1.11,4.09,4.09,0,0,1,1.74-.38,3.44,3.44,0,0,1,1.56.36,3,3,0,0,1,1.1.88l.06-.68a.36.36,0,0,1,.12-.29.52.52,0,0,1,.32-.07h1.32c.25,0,.38.11.38.32s0,.34,0,.61,0,.58,0,.93,0,.72,0,1.11,0,.78,0,1.15v1.9c0,.59,0,1.13,0,1.62s.06.92.1,1.29.06.66.1.89,0,.37,0,.42a.3.3,0,0,1-.34.32H238.8A.43.43,0,0,1,238.36,205.53Zm-.58-7.28a2.86,2.86,0,0,0-.9-.81,2.31,2.31,0,0,0-1.12-.29,2.05,2.05,0,0,0-1.78.9,4.44,4.44,0,0,0-.64,2.6,6.73,6.73,0,0,0,.12,1.29,3.24,3.24,0,0,0,.39,1.06,1.93,1.93,0,0,0,.71.71,2.06,2.06,0,0,0,1.06.26,1.85,1.85,0,0,0,.81-.18,2.22,2.22,0,0,0,.63-.46,2.4,2.4,0,0,0,.56-1.09,6.12,6.12,0,0,0,.16-1.33Z" transform="translate(-1.01)"/><path d="M245.36,205.91a2.83,2.83,0,0,1-1-.15,1.86,1.86,0,0,1-.77-.51,3.53,3.53,0,0,1-.62-2.4v-7c0-1,0-1.75,0-2.37s0-1.12-.05-1.5,0-.66,0-.83a2.88,2.88,0,0,1,0-.36q0-.3.36-.3h1.6a.38.38,0,0,1,.42.32c0,.13.05.38.07.74s0,.8,0,1.31,0,1.09,0,1.74,0,1.32,0,2v6.54a1.08,1.08,0,0,0,.14.64.55.55,0,0,0,.48.2h.2c.12,0,.19,0,.22.07a.76.76,0,0,1,0,.27v.94a.43.43,0,0,1-.22.42,2.49,2.49,0,0,1-.39.14A2.15,2.15,0,0,1,245.36,205.91Z" transform="translate(-1.01)"/><path d="M253.9,205.67a4.26,4.26,0,0,1-1.76.36,4.12,4.12,0,0,1-1.58-.28,2.94,2.94,0,0,1-1.16-.8,3.19,3.19,0,0,1-.72-1.33,7.08,7.08,0,0,1-.22-2v-6.08c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32v5.3c0,.36,0,.67,0,.93a5.74,5.74,0,0,0,.06.67,1.52,1.52,0,0,0,.13.48,2.12,2.12,0,0,0,.21.36,1.91,1.91,0,0,0,1.52.52,3.37,3.37,0,0,0,.87-.12,2.16,2.16,0,0,0,.75-.34,1.08,1.08,0,0,0,.4-.45,2.41,2.41,0,0,0,.16-.73c0-.25,0-.58,0-1v-5.65c0-.21.12-.32.36-.32h1.7a.3.3,0,0,1,.34.32v6.26c0,.43,0,.84,0,1.24s0,.77,0,1.1,0,.62,0,.85,0,.39,0,.47-.12.32-.36.32h-1.54c-.14,0-.23,0-.27-.07a.45.45,0,0,1-.11-.25l-.08-.76A3.67,3.67,0,0,1,253.9,205.67Z" transform="translate(-1.01)"/><path d="M264.69,206a5.76,5.76,0,0,1-2.25-.4,4.26,4.26,0,0,1-1.56-1.11,4.65,4.65,0,0,1-.94-1.69,7.19,7.19,0,0,1-.31-2.12,6.8,6.8,0,0,1,.37-2.32,5.15,5.15,0,0,1,1-1.78,4.63,4.63,0,0,1,1.56-1.14,4.76,4.76,0,0,1,2-.4,4.49,4.49,0,0,1,2,.4,3.93,3.93,0,0,1,1.4,1.12,4.93,4.93,0,0,1,.87,1.71,7.76,7.76,0,0,1,.29,2.15,2.12,2.12,0,0,1-.1.78.35.35,0,0,1-.33.2h-6.52A2.59,2.59,0,0,0,265,204a5.68,5.68,0,0,0,1.31-.17,6.83,6.83,0,0,0,1.32-.45.34.34,0,0,1,.52.2l.4,1a.61.61,0,0,1,.06.35.42.42,0,0,1-.23.23,7.37,7.37,0,0,1-1.69.68A7.86,7.86,0,0,1,264.69,206Zm-.13-8.9a2,2,0,0,0-1.64.7,3.53,3.53,0,0,0-.77,1.8h4.5a3.7,3.7,0,0,0-.15-.95,2.4,2.4,0,0,0-.42-.79,2.11,2.11,0,0,0-.64-.55A1.82,1.82,0,0,0,264.56,197.13Z" transform="translate(-1.01)"/><path d="M276.33,193.29c-.24,0-.36-.11-.36-.34v-2c0-.23.12-.34.36-.34h2c.26,0,.38.11.38.34v2c0,.23-.12.34-.38.34Zm.16,12.54a.3.3,0,0,1-.34-.32v-9.92a.3.3,0,0,1,.34-.32h1.72c.23,0,.34.11.34.32v9.92c0,.21-.11.32-.34.32Z" transform="translate(-1.01)"/><path d="M281.35,203.43c.14-.27.32-.33.56-.18a6.38,6.38,0,0,0,1.21.57,4.34,4.34,0,0,0,1.41.23,2.22,2.22,0,0,0,1.3-.35,1,1,0,0,0,.5-.89.88.88,0,0,0-.5-.82,7.32,7.32,0,0,0-1.64-.58c-.4-.11-.79-.23-1.18-.38a4,4,0,0,1-1-.58,2.68,2.68,0,0,1-.72-.88,2.81,2.81,0,0,1-.27-1.3,3,3,0,0,1,.3-1.36,2.91,2.91,0,0,1,.83-1,3.9,3.9,0,0,1,1.26-.62,6.21,6.21,0,0,1,3.38.05,4.74,4.74,0,0,1,1.37.68.4.4,0,0,1,.1.6l-.56.88c-.09.15-.18.22-.27.23a.53.53,0,0,1-.31-.09,4.92,4.92,0,0,0-1.09-.46,4,4,0,0,0-1-.14,2.8,2.8,0,0,0-1.18.24.88.88,0,0,0-.52.86.76.76,0,0,0,.17.5,1.69,1.69,0,0,0,.46.35,4.89,4.89,0,0,0,.65.27l.74.22c.38.11.76.23,1.15.38a4.52,4.52,0,0,1,1.07.56,2.72,2.72,0,0,1,.78.87,2.62,2.62,0,0,1,.3,1.31,3.26,3.26,0,0,1-.31,1.46,3,3,0,0,1-.85,1.08,3.76,3.76,0,0,1-1.27.67,5.19,5.19,0,0,1-1.55.23,7,7,0,0,1-2.19-.32,4.81,4.81,0,0,1-1.49-.76.45.45,0,0,1-.1-.6Z" transform="translate(-1.01)"/><path d="M28.88,229.89a2.26,2.26,0,0,1-1.05-.25,1.54,1.54,0,0,1-.73-.83,3.22,3.22,0,0,1-1.26.89,4.05,4.05,0,0,1-1.56.33,4.15,4.15,0,0,1-1.84-.39,3.73,3.73,0,0,1-1.34-1.09,5,5,0,0,1-.82-1.67,7.57,7.57,0,0,1-.28-2.13,7.47,7.47,0,0,1,.36-2.4,5.49,5.49,0,0,1,1-1.79,4,4,0,0,1,1.44-1.11,4.16,4.16,0,0,1,1.74-.38,3.78,3.78,0,0,1,1.34.24,3,3,0,0,1,1.06.64v-5.12c0-.21.11-.32.34-.32H29c.23,0,.34.11.34.32v12.38a.89.89,0,0,0,.13.55.72.72,0,0,0,.49.21.3.3,0,0,1,.3.34v1a.43.43,0,0,1-.34.46A3.09,3.09,0,0,1,28.88,229.89Zm-2-7.8a2.69,2.69,0,0,0-.92-.7,2.57,2.57,0,0,0-1.08-.24,2.08,2.08,0,0,0-1.79.9,4.43,4.43,0,0,0-.65,2.6,6,6,0,0,0,.13,1.29A3.26,3.26,0,0,0,23,227a2.12,2.12,0,0,0,.72.71,2.08,2.08,0,0,0,1.06.26,2.84,2.84,0,0,0,.88-.14,1.71,1.71,0,0,0,.7-.42,1.63,1.63,0,0,0,.42-.79,6,6,0,0,0,.12-1.35Z" transform="translate(-1.01)"/><path d="M36.78,230a5.69,5.69,0,0,1-2.25-.4A4.3,4.3,0,0,1,33,228.52a4.78,4.78,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.33,5.33,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.83,4.83,0,0,1,2-.4,4.46,4.46,0,0,1,2,.4A4,4,0,0,1,40,220.59a4.92,4.92,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,1.92,1.92,0,0,1-.1.78.34.34,0,0,1-.32.2H34.22a2.57,2.57,0,0,0,2.9,2.52,5.83,5.83,0,0,0,1.32-.17,6.83,6.83,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,0,.35c0,.09-.1.16-.23.23a7.19,7.19,0,0,1-1.69.68A7.78,7.78,0,0,1,36.78,230Zm-.14-8.9a2,2,0,0,0-1.64.7,3.52,3.52,0,0,0-.76,1.8h4.5a3.7,3.7,0,0,0-.16-.95,2.38,2.38,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.79,1.79,0,0,0,36.64,221.13Z" transform="translate(-1.01)"/><path d="M43.36,227.43c.13-.27.32-.33.56-.18a6.11,6.11,0,0,0,1.21.57,4.25,4.25,0,0,0,1.41.23,2.24,2.24,0,0,0,1.3-.35,1.05,1.05,0,0,0,.5-.89.9.9,0,0,0-.5-.82,7.32,7.32,0,0,0-1.64-.58c-.4-.11-.79-.23-1.18-.38a3.82,3.82,0,0,1-1-.58,2.68,2.68,0,0,1-.72-.88,2.81,2.81,0,0,1-.27-1.3,3,3,0,0,1,.3-1.36,2.91,2.91,0,0,1,.83-1,3.71,3.71,0,0,1,1.26-.62,6.21,6.21,0,0,1,3.38.05,4.87,4.87,0,0,1,1.37.68.41.41,0,0,1,.1.6l-.56.88c-.09.15-.18.22-.27.23a.51.51,0,0,1-.31-.09,5.12,5.12,0,0,0-1.09-.46,4,4,0,0,0-1-.14,2.8,2.8,0,0,0-1.18.24.87.87,0,0,0-.52.86.76.76,0,0,0,.17.5,1.55,1.55,0,0,0,.46.35,4.39,4.39,0,0,0,.65.27l.74.22c.37.11.76.23,1.15.38a4.72,4.72,0,0,1,1.07.56,2.72,2.72,0,0,1,.78.87,2.62,2.62,0,0,1,.3,1.31,3.26,3.26,0,0,1-.31,1.46,3.12,3.12,0,0,1-.85,1.08,3.76,3.76,0,0,1-1.27.67,5.23,5.23,0,0,1-1.55.23,6.92,6.92,0,0,1-2.19-.32,4.81,4.81,0,0,1-1.49-.76.44.44,0,0,1-.1-.6Z" transform="translate(-1.01)"/><path d="M57.26,230a5.69,5.69,0,0,1-2.25-.4,4.3,4.3,0,0,1-1.57-1.11,4.49,4.49,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.17,5.17,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.8,4.8,0,0,1,2-.4,4.46,4.46,0,0,1,2,.4,4,4,0,0,1,1.41,1.12,5.09,5.09,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,2.12,2.12,0,0,1-.1.78.34.34,0,0,1-.32.2H54.7A2.57,2.57,0,0,0,57.6,228a5.83,5.83,0,0,0,1.32-.17,7.07,7.07,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,.05.35c0,.09-.1.16-.23.23a7.37,7.37,0,0,1-1.69.68A7.84,7.84,0,0,1,57.26,230Zm-.14-8.9a2,2,0,0,0-1.64.7,3.52,3.52,0,0,0-.76,1.8h4.5a3.7,3.7,0,0,0-.16-.95,2.58,2.58,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.79,1.79,0,0,0,57.12,221.13Z" transform="translate(-1.01)"/><path d="M64.22,229.83c-.23,0-.34-.11-.34-.32v-6.26c0-.41,0-.82,0-1.23s0-.78,0-1.11,0-.62,0-.85,0-.39,0-.47.11-.32.34-.32h1.54a.38.38,0,0,1,.27.07.49.49,0,0,1,.11.23c0,.25.07.57.1,1s0,.72.06,1a5.62,5.62,0,0,1,1.25-1.76,2.42,2.42,0,0,1,1.69-.68.84.84,0,0,1,.45.09.37.37,0,0,1,.13.33v1.36a.33.33,0,0,1-.34.38,3.3,3.3,0,0,0-1.42.49,3.11,3.11,0,0,0-1,1,4.21,4.21,0,0,0-.31.64,3.92,3.92,0,0,0-.2.77,8.61,8.61,0,0,0-.1,1q0,.59,0,1.38v2.94c0,.21-.11.32-.34.32Z" transform="translate(-1.01)"/><path d="M71.7,217.29c-.24,0-.36-.11-.36-.34v-2c0-.23.12-.34.36-.34h2c.25,0,.38.11.38.34v2c0,.23-.13.34-.38.34Zm.16,12.54c-.23,0-.34-.11-.34-.32v-9.92c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32v9.92a.3.3,0,0,1-.34.32Z" transform="translate(-1.01)"/><path d="M83.66,229.53a2.53,2.53,0,0,1-.17-.46,3.42,3.42,0,0,1-.13-.56,3.43,3.43,0,0,1-1.25,1.11,3.56,3.56,0,0,1-1.67.41,4.12,4.12,0,0,1-1.84-.39,3.65,3.65,0,0,1-1.34-1.09,4.83,4.83,0,0,1-.82-1.67,7.57,7.57,0,0,1-.28-2.13,7.47,7.47,0,0,1,.36-2.4,5.47,5.47,0,0,1,1-1.79,3.93,3.93,0,0,1,1.43-1.11,4.09,4.09,0,0,1,1.74-.38,3.44,3.44,0,0,1,1.56.36,3,3,0,0,1,1.1.88l.06-.68a.36.36,0,0,1,.12-.29.52.52,0,0,1,.32-.07h1.32c.25,0,.38.11.38.32s0,.34,0,.61,0,.58,0,.93,0,.72,0,1.11,0,.78,0,1.15v1.9c0,.59,0,1.13,0,1.62s.06.92.1,1.29.06.66.1.89,0,.37,0,.42a.3.3,0,0,1-.34.32H84.1A.43.43,0,0,1,83.66,229.53Zm-.58-7.28a2.86,2.86,0,0,0-.9-.81,2.31,2.31,0,0,0-1.12-.29,2.05,2.05,0,0,0-1.78.9,4.44,4.44,0,0,0-.64,2.6,6.73,6.73,0,0,0,.12,1.29,3.24,3.24,0,0,0,.39,1.06,1.93,1.93,0,0,0,.71.71,2.06,2.06,0,0,0,1.06.26,1.85,1.85,0,0,0,.81-.18,2.22,2.22,0,0,0,.63-.46,2.4,2.4,0,0,0,.56-1.09,6.12,6.12,0,0,0,.16-1.33Z" transform="translate(-1.01)"/><path d="M90.66,229.91a2.83,2.83,0,0,1-1-.15,1.86,1.86,0,0,1-.77-.51,3.53,3.53,0,0,1-.62-2.4v-7c0-1,0-1.75,0-2.37s0-1.12,0-1.5,0-.66,0-.83a2.88,2.88,0,0,1,0-.36q0-.3.36-.3h1.6a.38.38,0,0,1,.42.32c0,.13,0,.38.07.74s0,.8.05,1.31,0,1.09,0,1.74,0,1.32,0,2v6.54a1.08,1.08,0,0,0,.14.64.55.55,0,0,0,.48.2h.2c.12,0,.19,0,.22.07a.76.76,0,0,1,0,.27v.94a.43.43,0,0,1-.22.42,2.49,2.49,0,0,1-.39.14A2.15,2.15,0,0,1,90.66,229.91Z" transform="translate(-1.01)"/><path d="M94.1,217.29c-.24,0-.36-.11-.36-.34v-2c0-.23.12-.34.36-.34h2c.25,0,.38.11.38.34v2c0,.23-.13.34-.38.34Zm.16,12.54c-.23,0-.34-.11-.34-.32v-9.92c0-.21.11-.32.34-.32H96a.3.3,0,0,1,.34.32v9.92a.3.3,0,0,1-.34.32Z" transform="translate(-1.01)"/><path d="M103.1,221.17H98.78c-.22,0-.32-.12-.32-.36v-1.2c0-.23.1-.34.32-.34h7a.3.3,0,0,1,.34.34v.56a1.64,1.64,0,0,1-.3.94l-4.54,6.82h4.62c.22,0,.34.12.34.36v1.2a.3.3,0,0,1-.34.34H98.56c-.22,0-.32-.11-.32-.34v-.56a1.64,1.64,0,0,1,.3-.94Z" transform="translate(-1.01)"/><path d="M112.4,230a5.69,5.69,0,0,1-2.25-.4,4.21,4.21,0,0,1-1.57-1.11,4.49,4.49,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.17,5.17,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.8,4.8,0,0,1,2-.4,4.49,4.49,0,0,1,2,.4,4,4,0,0,1,1.41,1.12,5.09,5.09,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,2.12,2.12,0,0,1-.1.78.35.35,0,0,1-.32.2h-6.52a2.89,2.89,0,0,0,.86,1.89,2.93,2.93,0,0,0,2,.63,5.83,5.83,0,0,0,1.32-.17,7.33,7.33,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,0,.35c0,.09-.1.16-.23.23a7.37,7.37,0,0,1-1.69.68A7.84,7.84,0,0,1,112.4,230Zm-.14-8.9a2,2,0,0,0-1.64.7,3.43,3.43,0,0,0-.76,1.8h4.5a4.19,4.19,0,0,0-.16-.95,2.58,2.58,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.82,1.82,0,0,0,112.26,221.13Z" transform="translate(-1.01)"/><path d="M127.3,229.89a2.2,2.2,0,0,1-1-.25,1.54,1.54,0,0,1-.73-.83,3.22,3.22,0,0,1-1.26.89,4.19,4.19,0,0,1-3.4-.06,3.65,3.65,0,0,1-1.34-1.09,4.83,4.83,0,0,1-.82-1.67,7.57,7.57,0,0,1-.28-2.13,7.47,7.47,0,0,1,.36-2.4,5.31,5.31,0,0,1,1-1.79,4,4,0,0,1,1.44-1.11,4.09,4.09,0,0,1,1.74-.38,3.83,3.83,0,0,1,1.34.24,3.1,3.1,0,0,1,1.06.64v-5.12c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32v12.38a.89.89,0,0,0,.13.55.7.7,0,0,0,.49.21.3.3,0,0,1,.3.34v1a.44.44,0,0,1-.34.46A3.17,3.17,0,0,1,127.3,229.89Zm-2-7.8a2.78,2.78,0,0,0-.92-.7,2.57,2.57,0,0,0-1.08-.24,2.08,2.08,0,0,0-1.79.9,4.36,4.36,0,0,0-.65,2.6,6,6,0,0,0,.13,1.29,3,3,0,0,0,.41,1.06,2,2,0,0,0,.72.71,2.06,2.06,0,0,0,1.06.26,2.89,2.89,0,0,0,.88-.14,1.71,1.71,0,0,0,.7-.42,1.63,1.63,0,0,0,.42-.79,6,6,0,0,0,.12-1.35Z" transform="translate(-1.01)"/><path d="M138.42,219.27h2.46c.21,0,.32.11.32.34v1.22c0,.23-.11.34-.32.34h-2.46v5.14a3.89,3.89,0,0,0,.07.83,1.05,1.05,0,0,0,.25.53,1.19,1.19,0,0,0,1,.34,3.36,3.36,0,0,0,.65-.07l.63-.15a.34.34,0,0,1,.48.24l.28,1a.49.49,0,0,1,0,.34.59.59,0,0,1-.26.22,4.26,4.26,0,0,1-1,.32,6.1,6.1,0,0,1-1.27.14,3.31,3.31,0,0,1-2.32-.72,3.76,3.76,0,0,1-.9-2.84v-5.3h-1.36c-.22,0-.32-.11-.32-.34v-1.22c0-.23.1-.34.32-.34H136v-2.78c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32Z" transform="translate(-1.01)"/><path d="M147.68,230a4.42,4.42,0,0,1-3.5-1.38,5.63,5.63,0,0,1-1.22-3.88,6.07,6.07,0,0,1,1.33-4.24,4.81,4.81,0,0,1,3.75-1.46,4.43,4.43,0,0,1,3.5,1.38,5.68,5.68,0,0,1,1.22,3.88,6.12,6.12,0,0,1-1.33,4.24A4.84,4.84,0,0,1,147.68,230Zm.06-2.08a2.23,2.23,0,0,0,1.87-.87,4.29,4.29,0,0,0,.67-2.61,6.74,6.74,0,0,0-.12-1.32,3.28,3.28,0,0,0-.4-1.05,2,2,0,0,0-1.78-.95,2.22,2.22,0,0,0-1.87.87,4.22,4.22,0,0,0-.67,2.61,6.74,6.74,0,0,0,.12,1.32A3.06,3.06,0,0,0,146,227a2,2,0,0,0,.71.7A2,2,0,0,0,147.74,228Z" transform="translate(-1.01)"/><path d="M162,220.39a4.07,4.07,0,0,1,1.27-.95,3.63,3.63,0,0,1,1.65-.37,4,4,0,0,1,1.82.42,2.72,2.72,0,0,1,1.24,1.2,4,4,0,0,1,1.48-1.2,4.22,4.22,0,0,1,1.86-.42,4,4,0,0,1,1.54.28,3.1,3.1,0,0,1,1.14.8,3.49,3.49,0,0,1,.75,1.33,7,7,0,0,1,.23,2v6.08c0,.21-.12.32-.36.32h-1.7c-.23,0-.34-.11-.34-.32v-5.3c0-.36,0-.67,0-.93s0-.48-.07-.67a2.31,2.31,0,0,0-.14-.48,1.69,1.69,0,0,0-.23-.36,1.19,1.19,0,0,0-.61-.4,2.91,2.91,0,0,0-.85-.12,3.25,3.25,0,0,0-.78.11,2,2,0,0,0-.72.33,1.3,1.3,0,0,0-.42.47,2,2,0,0,0-.16.71,7,7,0,0,0,0,1c0,.39,0,.82,0,1.27v4.4a.3.3,0,0,1-.34.32h-1.72c-.23,0-.34-.11-.34-.32v-5.3c0-.36,0-.67,0-.93s0-.48-.07-.67a2.31,2.31,0,0,0-.14-.48,1.69,1.69,0,0,0-.23-.36,1.19,1.19,0,0,0-.61-.4,2.91,2.91,0,0,0-.85-.12,3.25,3.25,0,0,0-.78.11,2,2,0,0,0-.72.33,1,1,0,0,0-.4.45,2.14,2.14,0,0,0-.16.73,8.7,8.7,0,0,0,0,1v5.67a.3.3,0,0,1-.34.32H160.1c-.23,0-.34-.11-.34-.32v-6.26c0-.41,0-.82,0-1.23s0-.78,0-1.11,0-.62,0-.85,0-.39,0-.47.11-.32.34-.32h1.54a.38.38,0,0,1,.27.07.61.61,0,0,1,.11.23C162,219.8,162,220.07,162,220.39Z" transform="translate(-1.01)"/><path d="M181.82,230a4.42,4.42,0,0,1-3.5-1.38,5.63,5.63,0,0,1-1.22-3.88,6.07,6.07,0,0,1,1.33-4.24,4.81,4.81,0,0,1,3.75-1.46,4.43,4.43,0,0,1,3.5,1.38,5.68,5.68,0,0,1,1.22,3.88,6.12,6.12,0,0,1-1.33,4.24A4.84,4.84,0,0,1,181.82,230Zm.06-2.08a2.23,2.23,0,0,0,1.87-.87,4.29,4.29,0,0,0,.67-2.61,6.74,6.74,0,0,0-.12-1.32,3.28,3.28,0,0,0-.4-1.05,2,2,0,0,0-1.78-.95,2.22,2.22,0,0,0-1.87.87,4.22,4.22,0,0,0-.67,2.61,6.74,6.74,0,0,0,.12,1.32,3.06,3.06,0,0,0,.4,1.05,2,2,0,0,0,.71.7A2,2,0,0,0,181.88,228Z" transform="translate(-1.01)"/><path d="M197.38,229.89a2.2,2.2,0,0,1-1-.25,1.54,1.54,0,0,1-.73-.83,3.22,3.22,0,0,1-1.26.89,4.19,4.19,0,0,1-3.4-.06,3.65,3.65,0,0,1-1.34-1.09,4.83,4.83,0,0,1-.82-1.67,7.57,7.57,0,0,1-.28-2.13,7.47,7.47,0,0,1,.36-2.4,5.31,5.31,0,0,1,1-1.79,4,4,0,0,1,1.44-1.11,4.09,4.09,0,0,1,1.74-.38,3.83,3.83,0,0,1,1.34.24,3.1,3.1,0,0,1,1.06.64v-5.12c0-.21.11-.32.34-.32h1.72a.3.3,0,0,1,.34.32v12.38a.89.89,0,0,0,.13.55.7.7,0,0,0,.49.21.3.3,0,0,1,.3.34v1a.44.44,0,0,1-.34.46A3.17,3.17,0,0,1,197.38,229.89Zm-2-7.8a2.78,2.78,0,0,0-.92-.7,2.57,2.57,0,0,0-1.08-.24,2.08,2.08,0,0,0-1.79.9,4.36,4.36,0,0,0-.65,2.6,6,6,0,0,0,.13,1.29,3,3,0,0,0,.41,1.06,2,2,0,0,0,.72.71,2.06,2.06,0,0,0,1.06.26,2.89,2.89,0,0,0,.88-.14,1.71,1.71,0,0,0,.7-.42,1.63,1.63,0,0,0,.42-.79,6,6,0,0,0,.12-1.35Z" transform="translate(-1.01)"/><path d="M205.28,230a5.69,5.69,0,0,1-2.25-.4,4.21,4.21,0,0,1-1.57-1.11,4.49,4.49,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.17,5.17,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.8,4.8,0,0,1,2-.4,4.49,4.49,0,0,1,2,.4,4,4,0,0,1,1.41,1.12,5.09,5.09,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,2.12,2.12,0,0,1-.1.78.35.35,0,0,1-.32.2h-6.52a2.89,2.89,0,0,0,.86,1.89,2.93,2.93,0,0,0,2,.63,5.83,5.83,0,0,0,1.32-.17,7.33,7.33,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,0,.35c0,.09-.1.16-.23.23a7.37,7.37,0,0,1-1.69.68A7.84,7.84,0,0,1,205.28,230Zm-.14-8.9a2,2,0,0,0-1.64.7,3.43,3.43,0,0,0-.76,1.8h4.5a4.19,4.19,0,0,0-.16-.95,2.58,2.58,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.82,1.82,0,0,0,205.14,221.13Z" transform="translate(-1.01)"/><path d="M214.24,229.91a2.83,2.83,0,0,1-1-.15,1.86,1.86,0,0,1-.77-.51,3.53,3.53,0,0,1-.62-2.4v-7c0-1,0-1.75,0-2.37s0-1.12,0-1.5,0-.66-.05-.83a2.88,2.88,0,0,1,0-.36q0-.3.36-.3h1.6a.38.38,0,0,1,.42.32c0,.13.05.38.07.74s0,.8,0,1.31,0,1.09,0,1.74,0,1.32,0,2v6.54a1.08,1.08,0,0,0,.14.64.55.55,0,0,0,.48.2h.2c.12,0,.19,0,.22.07a.76.76,0,0,1,0,.27v.94a.43.43,0,0,1-.22.42,2.49,2.49,0,0,1-.39.14A2.15,2.15,0,0,1,214.24,229.91Z" transform="translate(-1.01)"/><path d="M220.7,221.25c.37,1.24.7,2.37,1,3.39l.78,2.73c.22-.8.48-1.69.77-2.68s.62-2.12,1-3.4l1.62-5.48a.49.49,0,0,1,.54-.38h1.66c.28,0,.37.15.28.44l-4.42,13.6a.71.71,0,0,1-.19.28.7.7,0,0,1-.37.08h-1.84a.72.72,0,0,1-.38-.08.49.49,0,0,1-.18-.28l-4.56-13.64a.29.29,0,0,1,0-.29.3.3,0,0,1,.26-.11h1.82a.5.5,0,0,1,.54.38Z" transform="translate(-1.01)"/><path d="M235.82,229.53a2.53,2.53,0,0,1-.17-.46,3.42,3.42,0,0,1-.13-.56,3.43,3.43,0,0,1-1.25,1.11,3.56,3.56,0,0,1-1.67.41,4.12,4.12,0,0,1-1.84-.39,3.65,3.65,0,0,1-1.34-1.09,4.83,4.83,0,0,1-.82-1.67,7.57,7.57,0,0,1-.28-2.13,7.47,7.47,0,0,1,.36-2.4,5.47,5.47,0,0,1,1-1.79,3.93,3.93,0,0,1,1.43-1.11,4.09,4.09,0,0,1,1.74-.38,3.44,3.44,0,0,1,1.56.36,3,3,0,0,1,1.1.88l.06-.68a.36.36,0,0,1,.12-.29.52.52,0,0,1,.32-.07h1.32c.25,0,.38.11.38.32s0,.34,0,.61,0,.58,0,.93,0,.72,0,1.11,0,.78,0,1.15v1.9c0,.59,0,1.13.05,1.62s.06.92.1,1.29.06.66.1.89.05.37.05.42a.3.3,0,0,1-.34.32h-1.34A.43.43,0,0,1,235.82,229.53Zm-.58-7.28a2.86,2.86,0,0,0-.9-.81,2.31,2.31,0,0,0-1.12-.29,2.05,2.05,0,0,0-1.78.9,4.44,4.44,0,0,0-.64,2.6,6.73,6.73,0,0,0,.12,1.29,3.24,3.24,0,0,0,.39,1.06,1.93,1.93,0,0,0,.71.71,2.06,2.06,0,0,0,1.06.26,1.85,1.85,0,0,0,.81-.18,2.22,2.22,0,0,0,.63-.46,2.4,2.4,0,0,0,.56-1.09,6.12,6.12,0,0,0,.16-1.33Z" transform="translate(-1.01)"/><path d="M242.82,229.91a2.83,2.83,0,0,1-.95-.15,1.86,1.86,0,0,1-.77-.51,3.53,3.53,0,0,1-.62-2.4v-7c0-1,0-1.75,0-2.37s0-1.12-.05-1.5,0-.66,0-.83a2.88,2.88,0,0,1,0-.36q0-.3.36-.3h1.6a.38.38,0,0,1,.42.32c0,.13.05.38.07.74s0,.8.05,1.31,0,1.09,0,1.74,0,1.32,0,2v6.54a1.08,1.08,0,0,0,.14.64.55.55,0,0,0,.48.2h.2c.12,0,.19,0,.22.07a.76.76,0,0,1,0,.27v.94a.43.43,0,0,1-.22.42,2.49,2.49,0,0,1-.39.14A2.15,2.15,0,0,1,242.82,229.91Z" transform="translate(-1.01)"/><path d="M251.36,229.67a4.26,4.26,0,0,1-1.76.36,4.12,4.12,0,0,1-1.58-.28,2.94,2.94,0,0,1-1.16-.8,3.19,3.19,0,0,1-.72-1.33,7.08,7.08,0,0,1-.22-2v-6.08c0-.21.11-.32.34-.32H248a.3.3,0,0,1,.34.32v5.3c0,.36,0,.67,0,.93a5.74,5.74,0,0,0,.06.67,1.52,1.52,0,0,0,.13.48,2.12,2.12,0,0,0,.21.36,1.91,1.91,0,0,0,1.52.52,3.37,3.37,0,0,0,.87-.12,2.16,2.16,0,0,0,.75-.34,1.08,1.08,0,0,0,.4-.45,2.41,2.41,0,0,0,.16-.73c0-.25,0-.58,0-1v-5.65c0-.21.12-.32.36-.32h1.7a.3.3,0,0,1,.34.32v6.26c0,.43,0,.84,0,1.24s0,.77,0,1.1,0,.62,0,.85,0,.39,0,.47-.12.32-.36.32H253.1c-.14,0-.23,0-.27-.07a.45.45,0,0,1-.11-.25l-.08-.76A3.67,3.67,0,0,1,251.36,229.67Z" transform="translate(-1.01)"/><path d="M262.16,230a5.69,5.69,0,0,1-2.25-.4,4.21,4.21,0,0,1-1.57-1.11,4.49,4.49,0,0,1-.93-1.69,6.88,6.88,0,0,1-.31-2.12,7.06,7.06,0,0,1,.36-2.32,5.17,5.17,0,0,1,1-1.78,4.49,4.49,0,0,1,1.55-1.14,4.8,4.8,0,0,1,2-.4,4.49,4.49,0,0,1,2,.4,4,4,0,0,1,1.41,1.12,5.09,5.09,0,0,1,.86,1.71,7.76,7.76,0,0,1,.29,2.15,2.12,2.12,0,0,1-.1.78.35.35,0,0,1-.32.2H259.6a2.89,2.89,0,0,0,.86,1.89,2.93,2.93,0,0,0,2,.63,5.83,5.83,0,0,0,1.32-.17,7.33,7.33,0,0,0,1.32-.45.35.35,0,0,1,.52.2l.4,1a.68.68,0,0,1,.05.35c0,.09-.1.16-.23.23a7.37,7.37,0,0,1-1.69.68A7.84,7.84,0,0,1,262.16,230Zm-.14-8.9a2,2,0,0,0-1.64.7,3.43,3.43,0,0,0-.76,1.8h4.5a4.19,4.19,0,0,0-.16-.95,2.58,2.58,0,0,0-.41-.79,2.14,2.14,0,0,0-.65-.55A1.82,1.82,0,0,0,262,221.13Z" transform="translate(-1.01)"/></g><text class="i" transform="translate(788.41 30.96)">User fl<tspan class="az" x="107.13" y="0">o</tspan><tspan x="127.44" y="0">w</tspan></text><text class="ba" transform="translate(738.65 682.42)">(if er<tspan class="bb" x="40.36" y="0">r</tspan><tspan x="46.86" y="0">orS</tspan><tspan class="bc" x="75.48" y="0">t</tspan><tspan x="82.7" y="0">a</tspan><tspan class="bc" x="94" y="0">t</tspan><tspan x="101.22" y="0">e = </tspan><tspan class="bd" x="133.36" y="0">f</tspan><tspan x="139.6" y="0">alse)</tspan></text><path class="k" d="M484.44,301.25c-.31,0-.62,0-.94,0a17.5,17.5,0,1,1,17.5-17.5" transform="translate(-1.01)"/><polygon points="477.79 296.66 481.54 301.38 480.75 307.36 491.96 298.5 477.79 296.66"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1803.68 746.61"><defs><style>.a,.d{font-size:36px;}.a,.ar,.as,.aw,.y,.z{font-family:INGMe-Bold, ING Me;font-weight:700;}.b{letter-spacing:-0.01em;}.ar,.aw,.c,.y,.z{font-size:20px;}.c,.d,.n,.p,.u{font-family:INGMe, ING Me;}.c{font-weight:400;}.e{font-size:19px;}.f{letter-spacing:-0.01em;}.g{letter-spacing:0em;}.h{letter-spacing:-0.02em;}.i{letter-spacing:-0.06em;}.j{letter-spacing:-0.01em;}.k{letter-spacing:-0.07em;}.l{fill:none;stroke:#000;stroke-miterlimit:10;stroke-width:3px;}.aw,.m,.t,.z{opacity:0.4;}.n,.p,.u{font-size:26px;}.ar,.aw,.n,.s,.t{fill:#0071bc;}.o{letter-spacing:-0.01em;}.p,.r{fill:#22b573;}.q{letter-spacing:0em;}.u,.x{fill:#f7931e;}.v{letter-spacing:-0.03em;}.w{letter-spacing:0.02em;}.aa{letter-spacing:-0.02em;}.ab,.ak{letter-spacing:-0.01em;}.ac{letter-spacing:0em;}.ad{letter-spacing:-0.01em;}.ae{letter-spacing:-0.02em;}.af,.al{letter-spacing:0em;}.ag{letter-spacing:-0.01em;}.ah{fill:#4d4d4d;}.ai,.an{letter-spacing:-0.06em;}.ai,.aj,.ak,.al{fill:#000;}.am{letter-spacing:-0.01em;}.ao{letter-spacing:-0.01em;}.ap{letter-spacing:-0.05em;}.aq{letter-spacing:-0.08em;}.as{font-size:28px;fill:#fff;}.at{letter-spacing:-0.01em;}.au{letter-spacing:0em;}.av{letter-spacing:-0.01em;}.ax{letter-spacing:-0.01em;}.ay{letter-spacing:-0.03em;}.az{letter-spacing:0em;}.ba{letter-spacing:-0.01em;}</style></defs><text class="a" transform="translate(798.51 30.96)">User fl<tspan class="b" x="107.13" y="0">o</tspan><tspan x="127.44" y="0">w 2</tspan><tspan class="c"><tspan x="29.99" y="24">(Unparseable)</tspan></tspan></text><text class="d" transform="translate(523.51 188.07)">User<tspan class="e"><tspan x="-51.2" y="22.8">(input</tspan><tspan class="f" x="-1.16" y="22.8">E</tspan><tspan class="g" x="8.8" y="22.8">lement.input)</tspan></tspan></text><text class="d" transform="translate(516.89 382.07)"><tspan class="h">v</tspan><tspan x="16.92" y="0">alue</tspan></text><text class="a" transform="translate(461.83 569.07)">model<tspan class="i" x="103.86" y="0">V</tspan><tspan x="124.49" y="0">alue</tspan></text><text class="d" transform="translate(33.75 569.07)">seriali<tspan class="j" x="93.63" y="0">z</tspan><tspan x="109.37" y="0">ed</tspan><tspan class="k" x="149.65" y="0">V</tspan><tspan x="169.2" y="0">alue</tspan></text><line class="l" x1="560.22" y1="313.29" x2="560.22" y2="239.7"/><polygon points="571.33 304.87 560.22 309.59 549.11 304.87 560.22 331.2 571.33 304.87"/><line class="l" x1="590.22" y1="331.2" x2="590.22" y2="257.61"/><polygon points="601.33 266.04 590.22 261.32 579.11 266.04 590.22 239.7 601.33 266.04"/><line class="l" x1="560.22" y1="492.29" x2="560.22" y2="418.7"/><polygon points="571.33 483.87 560.22 488.59 549.11 483.87 560.22 510.2 571.33 483.87"/><path class="l" d="M473.72,599.2S329,748.64,175.72,611.52"/><polygon points="189.52 609.12 178.48 613.99 174.32 625.32 162.72 599.2 189.52 609.12"/><path class="l" d="M650,378.05c37.11,16.52,116.78,67.59,35.44,179.73"/><polygon points="653.67 391.67 653.34 379.6 661.79 370.99 633.22 371.7 653.67 391.67"/><g class="m"><path class="l" d="M162.72,510.42s144.71-149.44,298-12.31"/><polygon points="446.91 500.51 457.95 495.63 462.11 484.3 473.72 510.42 446.91 500.51"/></g><text class="n" transform="translate(570.49 464.1)">parser</text><text class="n" transform="translate(259.49 703.1)">seriali<tspan class="o" x="67.62" y="0">z</tspan><tspan x="78.99" y="0">er</tspan></text><g class="m"><text class="n" transform="translate(259.49 427.1)">deseriali<tspan class="o" x="96.72" y="0">z</tspan><tspan x="108.08" y="0">er</tspan></text></g><text class="p" transform="translate(607.49 277.1)">delega<tspan class="q" x="78.7" y="0">t</tspan><tspan x="88.09" y="0">e</tspan></text><text class="p" transform="translate(788.49 453.1)">sync</text><circle class="r" cx="732.72" cy="277.2" r="16.97"/><circle class="s" cx="592.22" cy="416.7" r="16.97"/><circle class="t" cx="234.22" cy="394.7" r="16.97"/><circle class="s" cx="234.22" cy="707.7" r="16.97"/><text class="u" transform="translate(445.49 151.1)">in<tspan class="q" x="21.09" y="0">t</tspan><tspan x="30.47" y="0">e</tspan><tspan class="v" x="44.62" y="0">r</tspan><tspan x="53.07" y="0">a</tspan><tspan class="w" x="67.75" y="0">c</tspan><tspan x="80.78" y="0">t</tspan></text><circle class="x" cx="420.72" cy="145.2" r="16.97"/><text class="y" transform="translate(414.79 151.45)">1</text><text class="y" transform="translate(585.79 424.45)">3</text><text class="y" transform="translate(227.79 714.45)">4</text><text class="z" transform="translate(228.79 401.45)">5</text><text class="y" transform="translate(726.79 284.45)">5</text><circle class="r" cx="771.72" cy="416.2" r="16.97"/><text class="y" transform="translate(765.79 423.45)">4</text><text class="y" transform="translate(979.75 187.95)"><tspan xml:space="preserve">1. User changes the input </tspan><tspan x="0" y="96">2. Nati</tspan><tspan class="aa" x="60.28" y="96">v</tspan><tspan x="70.24" y="96">e input syncs with </tspan><tspan x="0" y="120" xml:space="preserve"> lion-input-da</tspan><tspan class="ab" x="140.2" y="120">t</tspan><tspan class="ac" x="148.22" y="120">e </tspan><tspan class="ad" x="164.1" y="120">v</tspan><tspan x="174.06" y="120">alue and </tspan><tspan x="0" y="144" xml:space="preserve"> gets p</tspan><tspan class="ae" x="75.64" y="144">r</tspan><tspan x="82.76" y="144">ep</tspan><tspan class="ae" x="105.32" y="144">r</tspan><tspan class="af" x="112.44" y="144">o</tspan><tspan class="ag" x="123.84" y="144">c</tspan><tspan class="ac" x="133.64" y="144">essed</tspan><tspan class="ah"><tspan x="0" y="192">3. </tspan><tspan class="ai" x="21.26" y="192">V</tspan><tspan class="aj" x="32.72" y="192">alue is parsed </tspan><tspan class="ak" x="164.5" y="192">t</tspan><tspan class="aj" x="172.52" y="192">o model</tspan><tspan class="ai" x="246.42" y="192">V</tspan><tspan class="al" x="257.88" y="192">alue</tspan></tspan><tspan x="0" y="216" xml:space="preserve"> but it is unparseable </tspan><tspan x="0" y="240" xml:space="preserve"> (parser </tspan><tspan class="ae" x="89.48" y="240">r</tspan><tspan x="96.6" y="240">e</tspan><tspan class="am" x="107.68" y="240">t</tspan><tspan x="115.7" y="240">urns undefined)</tspan><tspan x="0" y="312">4. model</tspan><tspan class="an" x="78.96" y="312">V</tspan><tspan x="90.42" y="312">alu</tspan><tspan class="ao" x="119.2" y="312">e</tspan><tspan class="ap" x="130.08" y="312">.</tspan><tspan x="133.88" y="312">vi</tspan><tspan class="ag" x="149.42" y="312">e</tspan><tspan class="ac" x="160.38" y="312">w</tspan><tspan class="an" x="176.12" y="312">V</tspan><tspan x="187.58" y="312">alu</tspan><tspan class="ao" x="216.36" y="312">e</tspan><tspan x="227.24" y="312">, </tspan><tspan x="0" y="336" xml:space="preserve"> which is the </tspan><tspan class="aa" x="133.52" y="336">v</tspan><tspan x="143.48" y="336">alue prior </tspan><tspan class="am" x="236.29" y="336">t</tspan><tspan class="af" x="244.31" y="336">o </tspan><tspan x="0" y="360" xml:space="preserve"> the parsing s</tspan><tspan class="am" x="137.66" y="360">t</tspan><tspan x="145.68" y="360">e</tspan><tspan class="ao" x="156.76" y="360">p</tspan><tspan x="168.04" y="360">, </tspan><tspan x="0" y="384" xml:space="preserve"> is syn</tspan><tspan class="ag" x="71.38" y="384">c</tspan><tspan x="81.18" y="384">ed back </tspan><tspan class="am" x="156.78" y="384">t</tspan><tspan class="af" x="164.8" y="384">o the use</tspan><tspan class="aq" x="248.87" y="384">r</tspan><tspan x="254.88" y="384">.</tspan><tspan x="0" y="408" xml:space="preserve"> It is also seriali</tspan><tspan class="ab" x="155.84" y="408">z</tspan><tspan class="ac" x="164.62" y="408">ed</tspan><tspan x="0" y="432" xml:space="preserve"> </tspan><tspan x="0" y="504">5. </tspan><tspan class="an" x="21.26" y="504">V</tspan><tspan x="32.72" y="504">alue is delega</tspan><tspan class="am" x="159.36" y="504">t</tspan><tspan x="167.38" y="504">ed back </tspan><tspan class="am" x="242.98" y="504">t</tspan><tspan class="af" x="251" y="504">o </tspan><tspan x="0" y="528" xml:space="preserve"> nati</tspan><tspan class="aa" x="55.92" y="528">v</tspan><tspan x="65.88" y="528">e input </tspan><tspan class="ad" x="134.86" y="528">v</tspan><tspan x="144.82" y="528">alue </tspan><tspan x="0" y="552" xml:space="preserve"> (what the user sees)</tspan></text><text class="ar" transform="translate(1348.75 187.95)">“10%30%2010”<tspan x="0" y="96">“10%30%2010”</tspan><tspan x="0" y="192">[Unparseable]</tspan><tspan x="0" y="312">“10%30%2010”</tspan><tspan x="0" y="336"> </tspan><tspan x="0" y="504">“10%30%2010”</tspan></text><text class="y" transform="translate(1545.75 187.95)"> <tspan class="ah" x="4.8" y="0" xml:space="preserve">@user-input-changed </tspan><tspan x="0" y="96"> </tspan><tspan class="ah"><tspan x="0" y="192">@model-</tspan><tspan class="aa" x="81.98" y="192">v</tspan><tspan class="af" x="91.94" y="192" xml:space="preserve">alue-changed </tspan><tspan x="0" y="384" xml:space="preserve"> </tspan><tspan x="0" y="432">@seriali</tspan><tspan class="am" x="72.3" y="432">z</tspan><tspan x="81.08" y="432">ed-</tspan><tspan class="ad" x="111.62" y="432">v</tspan><tspan x="121.58" y="432" xml:space="preserve">alue-changed </tspan></tspan></text><text class="as" transform="translate(1255.22 665.7)">!</text><text class="z" transform="translate(0 269.8)">5. On <tspan class="ae" x="51.74" y="0">r</tspan><tspan x="58.86" y="0">equest: seriali</tspan><tspan class="am" x="187.02" y="0">z</tspan><tspan x="195.8" y="0">ed</tspan><tspan class="an" x="218.6" y="0">V</tspan><tspan x="230.06" y="0">alue</tspan><tspan x="0" y="24" xml:space="preserve"> is deseriali</tspan><tspan class="at" x="122.04" y="24">z</tspan><tspan x="130.82" y="24">ed </tspan><tspan class="at" x="158.42" y="24">t</tspan><tspan x="166.44" y="24">o model</tspan><tspan class="an" x="240.33" y="24">V</tspan><tspan class="au" x="251.79" y="24">alu</tspan><tspan class="av" x="280.57" y="24">e</tspan><tspan x="291.45" y="24">,</tspan><tspan x="0" y="48" xml:space="preserve"> which will again be Unparseable</tspan></text><text class="aw" transform="translate(95.17 343.8)">[Unparseable]</text><text class="ar" transform="translate(1264.59 597.8)">&quot;{&quot;type&quot;:&quot;unparseable&quot;,&quot;vi<tspan class="ax" x="238.75" y="0">e</tspan><tspan x="249.71" y="0">w</tspan><tspan class="an" x="265.45" y="0">V</tspan><tspan x="276.91" y="0">alue&quot;:&quot;10%30%2010&quot;}&quot;</tspan></text><text class="p" transform="translate(493.62 267.08)">sync</text><text class="p" transform="translate(414.62 324.08)">p<tspan class="ay" x="14.56" y="0">r</tspan><tspan class="az" x="23.01" y="0">ep</tspan><tspan class="v" x="51.71" y="0">r</tspan><tspan x="60.16" y="0">o</tspan><tspan class="ba" x="74.91" y="0">c</tspan><tspan x="87.25" y="0">ess</tspan></text><circle class="r" cx="467.85" cy="262.18" r="16.97"/><text class="y" transform="translate(461.92 269.44)">2</text><path class="l" d="M503.28,368.16l-.93,0a17.5,17.5,0,1,1,17.5-17.5"/><polygon points="497.64 363.56 501.4 368.29 500.61 374.27 511.81 365.4 497.64 363.56"/></svg>
@@ -0,0 +1,84 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 24.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
4
+ viewBox="0 0 2000 807" style="enable-background:new 0 0 2000 807;" xml:space="preserve">
5
+ <style type="text/css">
6
+ .st0{fill:none;stroke:#000000;stroke-width:3;stroke-miterlimit:10;}
7
+ .st1{opacity:0.4;}
8
+ .st2{fill:#22B573;}
9
+ .st3{fill:#0071BC;}
10
+ .st4{opacity:0.4;fill:#0071BC;}
11
+ .st5{fill:#F7931E;}
12
+ .st6{opacity:0.65;}
13
+ .st7{opacity:0.65;fill:#0071BC;}
14
+ .st8{fill:#F2F2F2;}
15
+ .st9{font-family:'INGMe-Bold';}
16
+ .st10{font-size:36px;}
17
+ .st11{font-family:'INGMe';}
18
+ .st12{font-size:20px;}
19
+ .st13{font-size:19px;}
20
+ .st14{font-size:26px;}
21
+ .st15{fill:#4D4D4D;}
22
+ .st16{fill:none;}
23
+ </style>
24
+ <g>
25
+ <text transform="matrix(1 0 0 1 875.9043 69.99)"><tspan x="0" y="0" class="st9 st10">Imperative</tspan><tspan x="19.22" y="24" class="st11 st12">(programmatic)</tspan></text>
26
+ <text transform="matrix(1 0 0 1 525.8647 763.1797)" class="st11 st10">formattedValue</text>
27
+ <text transform="matrix(1 0 0 1 607.5366 189.1799)"><tspan x="0" y="0" class="st11 st10">User</tspan><tspan x="-51.3" y="22.8" class="st11 st13">(inputElement.input)</tspan></text>
28
+ <text transform="matrix(1 0 0 1 600.6436 383.1797)" class="st11 st10">value</text>
29
+ <text transform="matrix(1 0 0 1 544.7715 570.1797)" class="st9 st10">modelValue</text>
30
+ <text transform="matrix(1 0 0 1 116.335 570.1797)" class="st11 st10">serializedValue</text>
31
+ <g>
32
+ <g>
33
+ <line class="st0" x1="646.24" y1="332.31" x2="646.24" y2="258.72"/>
34
+ <g>
35
+ <polygon points="657.35,267.14 646.24,262.42 635.13,267.14 646.24,240.81 "/>
36
+ </g>
37
+ </g>
38
+ </g>
39
+ <g>
40
+ <g>
41
+ <line class="st0" x1="642.24" y1="686.4" x2="642.24" y2="612.81"/>
42
+ <g>
43
+ <polygon points="653.35,677.97 642.24,682.69 631.13,677.97 642.24,704.31 "/>
44
+ </g>
45
+ </g>
46
+ </g>
47
+ <g>
48
+ <g>
49
+ <path class="st0" d="M557.74,600.31c0,0-144.71,149.44-297.99,12.32"/>
50
+ <g>
51
+ <polygon points="273.55,610.22 262.5,615.09 258.35,626.43 246.74,600.31 "/>
52
+ </g>
53
+ </g>
54
+ </g>
55
+ <g>
56
+ <g>
57
+ <path class="st0" d="M733.83,379.55c71.85,30.99,340.21,166.78,60.41,365.26"/>
58
+ <g>
59
+ <polygon points="737.35,393.12 737.22,381.05 745.82,372.58 717.24,372.81 "/>
60
+ </g>
61
+ </g>
62
+ </g>
63
+ <g>
64
+ <text transform="matrix(1 0 0 1 343.5166 704.2012)" class="st3 st11 st14">serializer</text>
65
+ </g>
66
+ <text transform="matrix(1 0 0 1 663.5166 278.2014)" class="st2 st11 st14">delegate</text>
67
+ <text transform="matrix(1 0 0 1 872.5166 454.2014)" class="st2 st11 st14">sync</text>
68
+ <text transform="matrix(1 0 0 1 654.5166 645.2012)" class="st3 st11 st14">formatter</text>
69
+ <circle class="st2" cx="791.74" cy="278.31" r="16.97"/>
70
+ <circle class="st3" cx="318.24" cy="708.81" r="16.97"/>
71
+ <circle class="st3" cx="676.24" cy="670.81" r="16.97"/>
72
+ <text transform="matrix(1 0 0 1 712.5166 526.2014)" class="st5 st11 st14">changed</text>
73
+ <circle class="st5" cx="687.74" cy="520.31" r="16.97"/>
74
+ <text transform="matrix(1 0 0 1 681.8179 527.5596)" class="st9 st12">1</text>
75
+ <text transform="matrix(1 0 0 1 670.8179 677.5596)" class="st9 st12">2</text>
76
+ <text transform="matrix(1 0 0 1 311.8179 714.5596)" class="st9 st12">2</text>
77
+ <text transform="matrix(1 0 0 1 785.8179 284.5598)" class="st9 st12">4</text>
78
+ <circle class="st2" cx="855.74" cy="417.31" r="16.97"/>
79
+ <text transform="matrix(1 0 0 1 849.8179 424.5598)" class="st9 st12">3</text>
80
+ <text transform="matrix(1 0 0 1 1063.7729 198.0515)"><tspan x="0" y="0" class="st9 st12">1. modelValue is changed during</tspan><tspan x="0" y="24" class="st9 st12"> runtime </tspan><tspan x="0" y="96" class="st9 st12">2. modelValue is formatted to </tspan><tspan x="0" y="120" class="st9 st12"> formattedValue and</tspan><tspan x="0" y="144" class="st9 st12"> modelValue is </tspan><tspan x="0" y="168" class="st9 st12"> serialized to serializedValue </tspan><tspan x="0" y="240" class="st15 st9 st12">3. </tspan><tspan x="21.26" y="240" class="st9 st12">formattedValue is reflected</tspan><tspan x="0" y="264" class="st9 st12"> back to the user through </tspan><tspan x="0" y="288" class="st9 st12"> the field value property</tspan><tspan x="0" y="336" class="st9 st12">4. Value is delegated back to </tspan><tspan x="0" y="360" class="st9 st12"> native input value </tspan><tspan x="0" y="384" class="st9 st12"> (what the user sees)</tspan><tspan x="0" y="432" class="st9 st12"> </tspan><tspan x="9.6" y="432" class="st15 st9 st12"> </tspan></text>
81
+ <text transform="matrix(1 0 0 1 1432.7729 189.0515)"><tspan x="0" y="0" class="st3 st9 st12"> [DateObject] </tspan><tspan x="0" y="24" class="st3 st9 st12"> (day + 1)</tspan><tspan x="0" y="96" class="st3 st9 st12">“30-11-2010”</tspan><tspan x="0" y="144" class="st3 st9 st12">“2010-10-30T00:00:00.000Z” </tspan><tspan x="0" y="240" class="st3 st9 st12">“30-11-2010”</tspan><tspan x="0" y="336" class="st3 st9 st12">“30-10-2010”</tspan></text>
82
+ <text transform="matrix(1 0 0 1 1629.7729 189.0515)"><tspan x="0" y="0" class="st9 st12"> </tspan><tspan x="4.8" y="0" class="st15 st9 st12">@model-value-changed </tspan><tspan x="0" y="96" class="st9 st12"> </tspan><tspan x="0" y="144" class="st15 st9 st12"> </tspan></text>
83
+ </g>
84
+ </svg>
@@ -0,0 +1,155 @@
1
+ import { css, html, LitElement } from 'lit';
2
+ import { LionField } from '@lion/ui/form-core.js';
3
+ import { LionFieldset } from '@lion/ui/fieldset.js';
4
+
5
+ export class HelperOutput extends LitElement {
6
+ static properties = {
7
+ field: Object,
8
+ show: Array,
9
+ title: String,
10
+ readyPromise: Object,
11
+ };
12
+
13
+ static styles = [
14
+ css`
15
+ :host {
16
+ display: block;
17
+ margin-top: 8px;
18
+ }
19
+
20
+ code {
21
+ font-size: 8px;
22
+ background-color: #eee;
23
+ }
24
+
25
+ caption {
26
+ position: absolute;
27
+ top: 0;
28
+ width: 1px;
29
+ height: 1px;
30
+ overflow: hidden;
31
+ clip-path: inset(100%);
32
+ clip: rect(1px, 1px, 1px, 1px);
33
+ white-space: nowrap;
34
+ border: 0;
35
+ margin: 0;
36
+ padding: 0;
37
+ }
38
+
39
+ table,
40
+ th,
41
+ td {
42
+ border-bottom: 1px solid rgb(204, 204, 204);
43
+ border-image: initial;
44
+ padding: 4px;
45
+ font-size: 12px;
46
+ border-left: none;
47
+ border-right: none;
48
+ text-align: left;
49
+ }
50
+
51
+ td {
52
+ max-width: 200px;
53
+ white-space: nowrap;
54
+ overflow: hidden;
55
+ text-overflow: ellipsis;
56
+ }
57
+
58
+ table {
59
+ border-collapse: collapse;
60
+ }
61
+
62
+ caption {
63
+ text-align: left;
64
+ }
65
+ `,
66
+ ];
67
+
68
+ firstUpdated(changedProperties) {
69
+ super.firstUpdated(changedProperties);
70
+ if (!this.field) {
71
+ // Fuzzy logic, but... practical
72
+ const prev = this.previousElementSibling;
73
+ if (prev instanceof LionField || prev instanceof LionFieldset) {
74
+ this.field = prev;
75
+ }
76
+ }
77
+ this.__rerender = this.__rerender.bind(this);
78
+
79
+ const storyRoot = this.closest('[mdjs-story-name]') || this.parentElement;
80
+
81
+ storyRoot.addEventListener('model-value-changed', this.__rerender);
82
+ storyRoot.addEventListener('mousemove', this.__rerender);
83
+ // this.field.addEventListener('blur', this.__rerender);
84
+ storyRoot.addEventListener('focusin', this.__rerender);
85
+ storyRoot.addEventListener('focusout', this.__rerender);
86
+ storyRoot.addEventListener('change', this.__rerender);
87
+
88
+ if (this.field._inputNode.form) {
89
+ this.field._inputNode.form.addEventListener('submit', this.__rerender);
90
+ }
91
+
92
+ if (this.readyPromise) {
93
+ this.readyPromise.then(() => {
94
+ this.__rerender();
95
+ });
96
+ }
97
+ }
98
+
99
+ __rerender() {
100
+ setTimeout(() => {
101
+ const f = this.field;
102
+ this.field = null;
103
+ this.field = f;
104
+ });
105
+ }
106
+
107
+ // eslint-disable-next-line class-methods-use-this
108
+ __renderProp(prop) {
109
+ const field = this.field || {};
110
+ let resultText = '';
111
+
112
+ if (typeof prop === 'string') {
113
+ const p = field[prop];
114
+ if (typeof p === 'boolean') {
115
+ return p === true ? '✓' : '';
116
+ }
117
+ if (typeof p === 'undefined') {
118
+ return html`<code>undefined</code>`;
119
+ }
120
+ if (typeof p === 'object' && p !== null) {
121
+ return JSON.stringify(p);
122
+ }
123
+ resultText = p;
124
+ } else {
125
+ resultText = prop.processor(field);
126
+ }
127
+
128
+ return html`<span title="${resultText}">${resultText}</span>`;
129
+ }
130
+
131
+ constructor() {
132
+ super();
133
+ this.title = 'States';
134
+ }
135
+
136
+ render() {
137
+ const computePropName = prop => (typeof prop === 'string' ? prop : prop.name);
138
+ return html`
139
+ <table>
140
+ <caption>
141
+ ${this.title}
142
+ </caption>
143
+ <tr>
144
+ ${this.show.map(prop => html`<th>${computePropName(prop)}</th>`)}
145
+ </tr>
146
+ <tr></tr>
147
+ <tr>
148
+ ${this.show.map(prop => html`<td>${this.__renderProp(prop)}</td>`)}
149
+ </tr>
150
+ </table>
151
+ `;
152
+ }
153
+ }
154
+
155
+ customElements.define('h-output', HelperOutput);