@bpost/bp-address-auto-complete-by-component 1.1.0 → 1.1.3

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 (165) hide show
  1. package/VERSION.md +36 -0
  2. package/bpost-bp-address-auto-complete-by-component.d.ts +1 -11
  3. package/esm2020/bpost-bp-address-auto-complete-by-component.mjs +5 -0
  4. package/esm2020/lib/box-number/box-number.component.mjs +800 -0
  5. package/esm2020/lib/enum/address-level.enum.mjs +8 -0
  6. package/esm2020/lib/enum/index.mjs +7 -0
  7. package/esm2020/lib/enum/input-name.enum.mjs +8 -0
  8. package/esm2020/lib/enum/source-type.enum.mjs +5 -0
  9. package/esm2020/lib/enum/suggestion-level-type.enum.mjs +8 -0
  10. package/esm2020/lib/enum/validation-message-option-type.enum.mjs +6 -0
  11. package/esm2020/lib/enum/validation-message-type.enum.mjs +7 -0
  12. package/esm2020/lib/lib-address-autocomplete-by-component.component.mjs +1233 -0
  13. package/esm2020/lib/lib-address-autocomplete-by-component.module.mjs +65 -0
  14. package/esm2020/lib/lib-address-autocomplete-by-component.service.mjs +14 -0
  15. package/esm2020/lib/locality/locality.component.mjs +747 -0
  16. package/{esm2015/lib/model/Locality.js → esm2020/lib/model/Box.mjs} +2 -2
  17. package/esm2020/lib/model/Locality.mjs +30 -0
  18. package/esm2020/lib/model/Street.mjs +30 -0
  19. package/esm2020/lib/model/query-parameters.model.mjs +21 -0
  20. package/esm2020/lib/services/adress.service.mjs +64 -0
  21. package/esm2020/lib/services/http.service.mjs +57 -0
  22. package/esm2020/lib/services/locale.service.mjs +37 -0
  23. package/esm2020/lib/services/nis9.service.mjs +26 -0
  24. package/esm2020/lib/services/unicode.service.mjs +376 -0
  25. package/esm2020/lib/street/street.component.mjs +725 -0
  26. package/esm2020/lib/street-number/street-number.component.mjs +891 -0
  27. package/esm2020/lib/utils/constants.mjs +2 -0
  28. package/esm2020/lib/utils/domhandler.mjs +47 -0
  29. package/esm2020/lib/utils/highlight-suggestion.pipe.mjs +62 -0
  30. package/{esm5/lib/utils/prefill-data.js → esm2020/lib/utils/prefill-data.mjs} +5 -7
  31. package/esm2020/lib/utils/prefilled-parameters.mjs +23 -0
  32. package/esm2020/lib/utils/preflll.event.mjs +7 -0
  33. package/esm2020/lib/utils/visible-suggestion.directive.mjs +39 -0
  34. package/esm2020/public-api.mjs +9 -0
  35. package/fesm2015/{bpost-bp-address-auto-complete-by-component.js → bpost-bp-address-auto-complete-by-component.mjs} +862 -787
  36. package/fesm2015/bpost-bp-address-auto-complete-by-component.mjs.map +1 -0
  37. package/{fesm5/bpost-bp-address-auto-complete-by-component.js → fesm2020/bpost-bp-address-auto-complete-by-component.mjs} +1795 -1925
  38. package/fesm2020/bpost-bp-address-auto-complete-by-component.mjs.map +1 -0
  39. package/lib/box-number/box-number.component.d.ts +6 -0
  40. package/lib/enum/index.d.ts +3 -0
  41. package/lib/enum/suggestion-level-type.enum.d.ts +5 -0
  42. package/lib/lib-address-autocomplete-by-component.component.d.ts +14 -0
  43. package/lib/lib-address-autocomplete-by-component.module.d.ts +15 -0
  44. package/lib/lib-address-autocomplete-by-component.service.d.ts +3 -0
  45. package/lib/locality/locality.component.d.ts +3 -0
  46. package/lib/services/adress.service.d.ts +3 -0
  47. package/lib/services/http.service.d.ts +5 -0
  48. package/lib/services/locale.service.d.ts +3 -0
  49. package/lib/services/nis9.service.d.ts +3 -0
  50. package/lib/services/unicode.service.d.ts +3 -0
  51. package/lib/street/street.component.d.ts +3 -0
  52. package/lib/street-number/street-number.component.d.ts +6 -1
  53. package/lib/utils/constants.d.ts +1 -0
  54. package/lib/utils/highlight-suggestion.pipe.d.ts +3 -0
  55. package/lib/utils/visible-suggestion.directive.d.ts +3 -0
  56. package/package.json +23 -13
  57. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/.editorconfig +0 -0
  58. package/tutorial/tutorial/aacwidget-tutorial/README.md +27 -0
  59. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/angular.json +0 -0
  60. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/browserslist +0 -0
  61. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/e2e/protractor.conf.js +0 -0
  62. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/e2e/src/app.e2e-spec.ts +0 -0
  63. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/e2e/src/app.po.ts +0 -0
  64. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/e2e/tsconfig.json +0 -0
  65. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/karma.conf.js +0 -0
  66. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/package-lock.json +0 -0
  67. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/package.json +0 -0
  68. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app-routing.module.ts +0 -0
  69. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.component.html +0 -0
  70. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.component.scss +0 -0
  71. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.component.spec.ts +0 -0
  72. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.component.ts +0 -0
  73. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.module.ts +0 -0
  74. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-full/widget-full.component.html +0 -0
  75. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-full/widget-full.component.scss +0 -0
  76. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-full/widget-full.component.ts +0 -0
  77. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-simple/widget-simple.component.html +0 -0
  78. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-simple/widget-simple.component.scss +0 -0
  79. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-simple/widget-simple.component.spec.ts +0 -0
  80. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-simple/widget-simple.component.ts +0 -0
  81. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/.gitkeep +0 -0
  82. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/i18n/de.json +0 -0
  83. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/i18n/en.json +0 -0
  84. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/i18n/fr.json +0 -0
  85. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/i18n/nl.json +0 -0
  86. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/scss/aacwidget-custom.scss +0 -0
  87. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/scss/aacwidget-default.scss +0 -0
  88. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/environments/environment.prod.ts +0 -0
  89. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/environments/environment.ts +0 -0
  90. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/favicon.ico +0 -0
  91. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/index.html +0 -0
  92. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/main.ts +0 -0
  93. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/polyfills.ts +0 -0
  94. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/styles.scss +0 -0
  95. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/test.ts +0 -0
  96. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/tsconfig.app.json +0 -0
  97. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/tsconfig.json +0 -0
  98. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/tsconfig.spec.json +0 -0
  99. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/tslint.json +0 -0
  100. package/tutorial/{tutorial-videos.txt → tutorial/tutorial-videos.txt} +0 -0
  101. package/bpost-bp-address-auto-complete-by-component.metadata.json +0 -1
  102. package/bundles/bpost-bp-address-auto-complete-by-component.umd.js +0 -5638
  103. package/bundles/bpost-bp-address-auto-complete-by-component.umd.js.map +0 -1
  104. package/bundles/bpost-bp-address-auto-complete-by-component.umd.min.js +0 -16
  105. package/bundles/bpost-bp-address-auto-complete-by-component.umd.min.js.map +0 -1
  106. package/esm2015/bpost-bp-address-auto-complete-by-component.js +0 -16
  107. package/esm2015/lib/box-number/box-number.component.js +0 -811
  108. package/esm2015/lib/enum/address-level.enum.js +0 -8
  109. package/esm2015/lib/enum/index.js +0 -4
  110. package/esm2015/lib/enum/input-name.enum.js +0 -8
  111. package/esm2015/lib/enum/source-type.enum.js +0 -5
  112. package/esm2015/lib/enum/validation-message-option-type.enum.js +0 -6
  113. package/esm2015/lib/enum/validation-message-type.enum.js +0 -7
  114. package/esm2015/lib/lib-address-autocomplete-by-component.component.js +0 -1116
  115. package/esm2015/lib/lib-address-autocomplete-by-component.module.js +0 -42
  116. package/esm2015/lib/lib-address-autocomplete-by-component.service.js +0 -14
  117. package/esm2015/lib/locality/locality.component.js +0 -769
  118. package/esm2015/lib/model/Box.js +0 -30
  119. package/esm2015/lib/model/Street.js +0 -30
  120. package/esm2015/lib/model/query-parameters.model.js +0 -21
  121. package/esm2015/lib/services/adress.service.js +0 -68
  122. package/esm2015/lib/services/http.service.js +0 -53
  123. package/esm2015/lib/services/locale.service.js +0 -39
  124. package/esm2015/lib/services/nis9.service.js +0 -30
  125. package/esm2015/lib/services/unicode.service.js +0 -376
  126. package/esm2015/lib/street/street.component.js +0 -749
  127. package/esm2015/lib/street-number/street-number.component.js +0 -900
  128. package/esm2015/lib/utils/domhandler.js +0 -47
  129. package/esm2015/lib/utils/highlight-suggestion.pipe.js +0 -63
  130. package/esm2015/lib/utils/prefill-data.js +0 -24
  131. package/esm2015/lib/utils/prefilled-parameters.js +0 -23
  132. package/esm2015/lib/utils/preflll.event.js +0 -7
  133. package/esm2015/lib/utils/visible-suggestion.directive.js +0 -42
  134. package/esm2015/public-api.js +0 -9
  135. package/esm5/bpost-bp-address-auto-complete-by-component.js +0 -16
  136. package/esm5/lib/box-number/box-number.component.js +0 -831
  137. package/esm5/lib/enum/address-level.enum.js +0 -8
  138. package/esm5/lib/enum/index.js +0 -4
  139. package/esm5/lib/enum/input-name.enum.js +0 -8
  140. package/esm5/lib/enum/source-type.enum.js +0 -5
  141. package/esm5/lib/enum/validation-message-option-type.enum.js +0 -6
  142. package/esm5/lib/enum/validation-message-type.enum.js +0 -7
  143. package/esm5/lib/lib-address-autocomplete-by-component.component.js +0 -1132
  144. package/esm5/lib/lib-address-autocomplete-by-component.module.js +0 -45
  145. package/esm5/lib/lib-address-autocomplete-by-component.service.js +0 -16
  146. package/esm5/lib/locality/locality.component.js +0 -825
  147. package/esm5/lib/model/Box.js +0 -35
  148. package/esm5/lib/model/Locality.js +0 -35
  149. package/esm5/lib/model/Street.js +0 -35
  150. package/esm5/lib/model/query-parameters.model.js +0 -23
  151. package/esm5/lib/services/adress.service.js +0 -72
  152. package/esm5/lib/services/http.service.js +0 -55
  153. package/esm5/lib/services/locale.service.js +0 -40
  154. package/esm5/lib/services/nis9.service.js +0 -31
  155. package/esm5/lib/services/unicode.service.js +0 -379
  156. package/esm5/lib/street/street.component.js +0 -794
  157. package/esm5/lib/street-number/street-number.component.js +0 -920
  158. package/esm5/lib/utils/domhandler.js +0 -51
  159. package/esm5/lib/utils/highlight-suggestion.pipe.js +0 -75
  160. package/esm5/lib/utils/prefilled-parameters.js +0 -25
  161. package/esm5/lib/utils/preflll.event.js +0 -9
  162. package/esm5/lib/utils/visible-suggestion.directive.js +0 -43
  163. package/esm5/public-api.js +0 -9
  164. package/fesm2015/bpost-bp-address-auto-complete-by-component.js.map +0 -1
  165. package/fesm5/bpost-bp-address-auto-complete-by-component.js.map +0 -1
@@ -1,379 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- // const diacriticsRemovalMap = require('../../assets/diacriticsRemovalMap.json');
5
- var diacriticsRemovalMap = {
6
- 'default': [
7
- {
8
- 'base': 'A',
9
- 'letters': '\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F'
10
- },
11
- {
12
- 'base': 'AA',
13
- 'letters': '\uA732'
14
- },
15
- {
16
- 'base': 'AE',
17
- 'letters': '\u00C6\u01FC\u01E2'
18
- },
19
- {
20
- 'base': 'AO',
21
- 'letters': '\uA734'
22
- },
23
- {
24
- 'base': 'AU',
25
- 'letters': '\uA736'
26
- },
27
- {
28
- 'base': 'AV',
29
- 'letters': '\uA738\uA73A'
30
- },
31
- {
32
- 'base': 'AY',
33
- 'letters': '\uA73C'
34
- },
35
- {
36
- 'base': 'B',
37
- 'letters': '\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181'
38
- },
39
- {
40
- 'base': 'C',
41
- 'letters': '\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E'
42
- },
43
- {
44
- 'base': 'D',
45
- 'letters': '\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779'
46
- },
47
- {
48
- 'base': 'DZ',
49
- 'letters': '\u01F1\u01C4'
50
- },
51
- {
52
- 'base': 'Dz',
53
- 'letters': '\u01F2\u01C5'
54
- },
55
- {
56
- 'base': 'E',
57
- 'letters': '\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E'
58
- },
59
- {
60
- 'base': 'F',
61
- 'letters': '\u0046\u24BB\uFF26\u1E1E\u0191\uA77B'
62
- },
63
- {
64
- 'base': 'G',
65
- 'letters': '\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E'
66
- },
67
- {
68
- 'base': 'H',
69
- 'letters': '\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D'
70
- },
71
- {
72
- 'base': 'I',
73
- 'letters': '\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197'
74
- },
75
- {
76
- 'base': 'J',
77
- 'letters': '\u004A\u24BF\uFF2A\u0134\u0248'
78
- },
79
- {
80
- 'base': 'K',
81
- 'letters': '\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2'
82
- },
83
- {
84
- 'base': 'L',
85
- 'letters': '\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780'
86
- },
87
- {
88
- 'base': 'LJ',
89
- 'letters': '\u01C7'
90
- },
91
- {
92
- 'base': 'Lj',
93
- 'letters': '\u01C8'
94
- },
95
- {
96
- 'base': 'M',
97
- 'letters': '\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C'
98
- },
99
- {
100
- 'base': 'N',
101
- 'letters': '\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4'
102
- },
103
- {
104
- 'base': 'NJ',
105
- 'letters': '\u01CA'
106
- },
107
- {
108
- 'base': 'Nj',
109
- 'letters': '\u01CB'
110
- },
111
- {
112
- 'base': 'O',
113
- 'letters': '\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C'
114
- },
115
- {
116
- 'base': 'OI',
117
- 'letters': '\u01A2'
118
- },
119
- {
120
- 'base': 'OO',
121
- 'letters': '\uA74E'
122
- },
123
- {
124
- 'base': 'OU',
125
- 'letters': '\u0222'
126
- },
127
- {
128
- 'base': 'OE',
129
- 'letters': '\u008C\u0152'
130
- },
131
- {
132
- 'base': 'oe',
133
- 'letters': '\u009C\u0153'
134
- },
135
- {
136
- 'base': 'P',
137
- 'letters': '\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754'
138
- },
139
- {
140
- 'base': 'Q',
141
- 'letters': '\u0051\u24C6\uFF31\uA756\uA758\u024A'
142
- },
143
- {
144
- 'base': 'R',
145
- 'letters': '\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782'
146
- },
147
- {
148
- 'base': 'S',
149
- 'letters': '\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784'
150
- },
151
- {
152
- 'base': 'T',
153
- 'letters': '\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786'
154
- },
155
- {
156
- 'base': 'TZ',
157
- 'letters': '\uA728'
158
- },
159
- {
160
- 'base': 'U',
161
- 'letters': '\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244'
162
- },
163
- {
164
- 'base': 'V',
165
- 'letters': '\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245'
166
- },
167
- {
168
- 'base': 'VY',
169
- 'letters': '\uA760'
170
- },
171
- {
172
- 'base': 'W',
173
- 'letters': '\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72'
174
- },
175
- {
176
- 'base': 'X',
177
- 'letters': '\u0058\u24CD\uFF38\u1E8A\u1E8C'
178
- },
179
- {
180
- 'base': 'Y',
181
- 'letters': '\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE'
182
- },
183
- {
184
- 'base': 'Z',
185
- 'letters': '\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762'
186
- },
187
- {
188
- 'base': 'a',
189
- 'letters': '\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250'
190
- },
191
- {
192
- 'base': 'aa',
193
- 'letters': '\uA733'
194
- },
195
- {
196
- 'base': 'ae',
197
- 'letters': '\u00E6\u01FD\u01E3'
198
- },
199
- {
200
- 'base': 'ao',
201
- 'letters': '\uA735'
202
- },
203
- {
204
- 'base': 'au',
205
- 'letters': '\uA737'
206
- },
207
- {
208
- 'base': 'av',
209
- 'letters': '\uA739\uA73B'
210
- },
211
- {
212
- 'base': 'ay',
213
- 'letters': '\uA73D'
214
- },
215
- {
216
- 'base': 'b',
217
- 'letters': '\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253'
218
- },
219
- {
220
- 'base': 'c',
221
- 'letters': '\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184'
222
- },
223
- {
224
- 'base': 'd',
225
- 'letters': '\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A'
226
- },
227
- {
228
- 'base': 'dz',
229
- 'letters': '\u01F3\u01C6'
230
- },
231
- {
232
- 'base': 'e',
233
- 'letters': '\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD'
234
- },
235
- {
236
- 'base': 'f',
237
- 'letters': '\u0066\u24D5\uFF46\u1E1F\u0192\uA77C'
238
- },
239
- {
240
- 'base': 'g',
241
- 'letters': '\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F'
242
- },
243
- {
244
- 'base': 'h',
245
- 'letters': '\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265'
246
- },
247
- {
248
- 'base': 'hv',
249
- 'letters': '\u0195'
250
- },
251
- {
252
- 'base': 'i',
253
- 'letters': '\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131'
254
- },
255
- {
256
- 'base': 'j',
257
- 'letters': '\u006A\u24D9\uFF4A\u0135\u01F0\u0249'
258
- },
259
- {
260
- 'base': 'k',
261
- 'letters': '\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3'
262
- },
263
- {
264
- 'base': 'l',
265
- 'letters': '\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747'
266
- },
267
- {
268
- 'base': 'lj',
269
- 'letters': '\u01C9'
270
- },
271
- {
272
- 'base': 'm',
273
- 'letters': '\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F'
274
- },
275
- {
276
- 'base': 'n',
277
- 'letters': '\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5'
278
- },
279
- {
280
- 'base': 'nj',
281
- 'letters': '\u01CC'
282
- },
283
- {
284
- 'base': 'o',
285
- 'letters': '\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275'
286
- },
287
- {
288
- 'base': 'oi',
289
- 'letters': '\u01A3'
290
- },
291
- {
292
- 'base': 'ou',
293
- 'letters': '\u0223'
294
- },
295
- {
296
- 'base': 'oo',
297
- 'letters': '\uA74F'
298
- },
299
- {
300
- 'base': 'p',
301
- 'letters': '\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755'
302
- },
303
- {
304
- 'base': 'q',
305
- 'letters': '\u0071\u24E0\uFF51\u024B\uA757\uA759'
306
- },
307
- {
308
- 'base': 'r',
309
- 'letters': '\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783'
310
- },
311
- {
312
- 'base': 's',
313
- 'letters': '\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B'
314
- },
315
- {
316
- 'base': 't',
317
- 'letters': '\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787'
318
- },
319
- {
320
- 'base': 'tz',
321
- 'letters': '\uA729'
322
- },
323
- {
324
- 'base': 'u',
325
- 'letters': '\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289'
326
- },
327
- {
328
- 'base': 'v',
329
- 'letters': '\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C'
330
- },
331
- {
332
- 'base': 'vy',
333
- 'letters': '\uA761'
334
- },
335
- {
336
- 'base': 'w',
337
- 'letters': '\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73'
338
- },
339
- {
340
- 'base': 'x',
341
- 'letters': '\u0078\u24E7\uFF58\u1E8B\u1E8D'
342
- },
343
- {
344
- 'base': 'y',
345
- 'letters': '\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF'
346
- },
347
- {
348
- 'base': 'z',
349
- 'letters': '\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763'
350
- }
351
- ]
352
- };
353
- var UnicodeService = /** @class */ (function () {
354
- function UnicodeService() {
355
- var _this = this;
356
- this.defaultDiacriticsRemovalMap = diacriticsRemovalMap.default;
357
- this.diacriticsMap = {};
358
- this.defaultDiacriticsRemovalMap.forEach(function (value) { return value.letters.split('').forEach(function (char) { return _this.diacriticsMap[char] = value.base; }); });
359
- }
360
- UnicodeService.prototype.removeDiacritics = function (str) {
361
- var _this = this;
362
- if (str === null || str === undefined) {
363
- return str;
364
- }
365
- return str.replace(/[^\u0000-\u007E]/g, function (a) { return _this.diacriticsMap[a] || a; });
366
- };
367
- UnicodeService.prototype.ngOnDestroy = function () {
368
- this.diacriticsMap = {};
369
- };
370
- UnicodeService.ɵprov = i0.ɵɵdefineInjectable({ factory: function UnicodeService_Factory() { return new UnicodeService(); }, token: UnicodeService, providedIn: "root" });
371
- UnicodeService = __decorate([
372
- Injectable({
373
- providedIn: 'root'
374
- })
375
- ], UnicodeService);
376
- return UnicodeService;
377
- }());
378
- export { UnicodeService };
379
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pY29kZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGJwb3N0L2JwLWFkZHJlc3MtYXV0by1jb21wbGV0ZS1ieS1jb21wb25lbnQvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvdW5pY29kZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDOztBQUV0RCxrRkFBa0Y7QUFFbEYsSUFBTSxvQkFBb0IsR0FBRztJQUMzQixTQUFTLEVBQUU7UUFDUDtZQUNJLE1BQU0sRUFBRSxHQUFHO1lBQ1gsU0FBUyxFQUFFLDhNQUE4TTtTQUM1TjtRQUNEO1lBQ0ksTUFBTSxFQUFFLElBQUk7WUFDWixTQUFTLEVBQUUsUUFBUTtTQUN0QjtRQUNEO1lBQ0ksTUFBTSxFQUFFLElBQUk7WUFDWixTQUFTLEVBQUUsb0JBQW9CO1NBQ2xDO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxRQUFRO1NBQ3RCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxRQUFRO1NBQ3RCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxjQUFjO1NBQzVCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxRQUFRO1NBQ3RCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsR0FBRztZQUNYLFNBQVMsRUFBRSx3REFBd0Q7U0FDdEU7UUFDRDtZQUNJLE1BQU0sRUFBRSxHQUFHO1lBQ1gsU0FBUyxFQUFFLDBFQUEwRTtTQUN4RjtRQUNEO1lBQ0ksTUFBTSxFQUFFLEdBQUc7WUFDWCxTQUFTLEVBQUUsc0ZBQXNGO1NBQ3BHO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxjQUFjO1NBQzVCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxjQUFjO1NBQzVCO1FBQ0Q7WUFD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QyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQzFCLENBQUM7O0lBbEJVLGNBQWM7UUFIMUIsVUFBVSxDQUFDO1lBQ1YsVUFBVSxFQUFFLE1BQU07U0FDbkIsQ0FBQztPQUNXLGNBQWMsQ0FvQjFCO3lCQXhYRDtDQXdYQyxBQXBCRCxJQW9CQztTQXBCWSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8vIGNvbnN0IGRpYWNyaXRpY3NSZW1vdmFsTWFwID0gcmVxdWlyZSgnLi4vLi4vYXNzZXRzL2RpYWNyaXRpY3NSZW1vdmFsTWFwLmpzb24nKTtcblxuY29uc3QgZGlhY3JpdGljc1JlbW92YWxNYXAgPSB7XG4gICdkZWZhdWx0JzogW1xuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0EnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNDFcXHUyNEI2XFx1RkYyMVxcdTAwQzBcXHUwMEMxXFx1MDBDMlxcdTFFQTZcXHUxRUE0XFx1MUVBQVxcdTFFQThcXHUwMEMzXFx1MDEwMFxcdTAxMDJcXHUxRUIwXFx1MUVBRVxcdTFFQjRcXHUxRUIyXFx1MDIyNlxcdTAxRTBcXHUwMEM0XFx1MDFERVxcdTFFQTJcXHUwMEM1XFx1MDFGQVxcdTAxQ0RcXHUwMjAwXFx1MDIwMlxcdTFFQTBcXHUxRUFDXFx1MUVCNlxcdTFFMDBcXHUwMTA0XFx1MDIzQVxcdTJDNkYnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0FBJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzMyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdBRScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDBDNlxcdTAxRkNcXHUwMUUyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdBTycsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1QTczNCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnQVUnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3MzYnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0FWJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzM4XFx1QTczQSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnQVknLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3M0MnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0InLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNDJcXHUyNEI3XFx1RkYyMlxcdTFFMDJcXHUxRTA0XFx1MUUwNlxcdTAyNDNcXHUwMTgyXFx1MDE4MSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnQycsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0M1xcdTI0QjhcXHVGRjIzXFx1MDEwNlxcdTAxMDhcXHUwMTBBXFx1MDEwQ1xcdTAwQzdcXHUxRTA4XFx1MDE4N1xcdTAyM0JcXHVBNzNFJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdEJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDQ0XFx1MjRCOVxcdUZGMjRcXHUxRTBBXFx1MDEwRVxcdTFFMENcXHUxRTEwXFx1MUUxMlxcdTFFMEVcXHUwMTEwXFx1MDE4QlxcdTAxOEFcXHUwMTg5XFx1QTc3OSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnRFonLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAxRjFcXHUwMUM0J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdEeicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDFGMlxcdTAxQzUnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0UnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNDVcXHUyNEJBXFx1RkYyNVxcdTAwQzhcXHUwMEM5XFx1MDBDQVxcdTFFQzBcXHUxRUJFXFx1MUVDNFxcdTFFQzJcXHUxRUJDXFx1MDExMlxcdTFFMTRcXHUxRTE2XFx1MDExNFxcdTAxMTZcXHUwMENCXFx1MUVCQVxcdTAxMUFcXHUwMjA0XFx1MDIwNlxcdTFFQjhcXHUxRUM2XFx1MDIyOFxcdTFFMUNcXHUwMTE4XFx1MUUxOFxcdTFFMUFcXHUwMTkwXFx1MDE4RSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnRicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0NlxcdTI0QkJcXHVGRjI2XFx1MUUxRVxcdTAxOTFcXHVBNzdCJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdHJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDQ3XFx1MjRCQ1xcdUZGMjdcXHUwMUY0XFx1MDExQ1xcdTFFMjBcXHUwMTFFXFx1MDEyMFxcdTAxRTZcXHUwMTIyXFx1MDFFNFxcdTAxOTNcXHVBN0EwXFx1QTc3RFxcdUE3N0UnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0gnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNDhcXHUyNEJEXFx1RkYyOFxcdTAxMjRcXHUxRTIyXFx1MUUyNlxcdTAyMUVcXHUxRTI0XFx1MUUyOFxcdTFFMkFcXHUwMTI2XFx1MkM2N1xcdTJDNzVcXHVBNzhEJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdJJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDQ5XFx1MjRCRVxcdUZGMjlcXHUwMENDXFx1MDBDRFxcdTAwQ0VcXHUwMTI4XFx1MDEyQVxcdTAxMkNcXHUwMTMwXFx1MDBDRlxcdTFFMkVcXHUxRUM4XFx1MDFDRlxcdTAyMDhcXHUwMjBBXFx1MUVDQVxcdTAxMkVcXHUxRTJDXFx1MDE5NydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnSicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0QVxcdTI0QkZcXHVGRjJBXFx1MDEzNFxcdTAyNDgnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0snLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNEJcXHUyNEMwXFx1RkYyQlxcdTFFMzBcXHUwMUU4XFx1MUUzMlxcdTAxMzZcXHUxRTM0XFx1MDE5OFxcdTJDNjlcXHVBNzQwXFx1QTc0MlxcdUE3NDRcXHVBN0EyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdMJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDRDXFx1MjRDMVxcdUZGMkNcXHUwMTNGXFx1MDEzOVxcdTAxM0RcXHUxRTM2XFx1MUUzOFxcdTAxM0JcXHUxRTNDXFx1MUUzQVxcdTAxNDFcXHUwMjNEXFx1MkM2MlxcdTJDNjBcXHVBNzQ4XFx1QTc0NlxcdUE3ODAnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0xKJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMUM3J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdMaicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDFDOCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnTScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0RFxcdTI0QzJcXHVGRjJEXFx1MUUzRVxcdTFFNDBcXHUxRTQyXFx1MkM2RVxcdTAxOUMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ04nLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNEVcXHUyNEMzXFx1RkYyRVxcdTAxRjhcXHUwMTQzXFx1MDBEMVxcdTFFNDRcXHUwMTQ3XFx1MUU0NlxcdTAxNDVcXHUxRTRBXFx1MUU0OFxcdTAyMjBcXHUwMTlEXFx1QTc5MFxcdUE3QTQnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ05KJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMUNBJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdOaicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDFDQidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnTycsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0RlxcdTI0QzRcXHVGRjJGXFx1MDBEMlxcdTAwRDNcXHUwMEQ0XFx1MUVEMlxcdTFFRDBcXHUxRUQ2XFx1MUVENFxcdTAwRDVcXHUxRTRDXFx1MDIyQ1xcdTFFNEVcXHUwMTRDXFx1MUU1MFxcdTFFNTJcXHUwMTRFXFx1MDIyRVxcdTAyMzBcXHUwMEQ2XFx1MDIyQVxcdTFFQ0VcXHUwMTUwXFx1MDFEMVxcdTAyMENcXHUwMjBFXFx1MDFBMFxcdTFFRENcXHUxRURBXFx1MUVFMFxcdTFFREVcXHUxRUUyXFx1MUVDQ1xcdTFFRDhcXHUwMUVBXFx1MDFFQ1xcdTAwRDhcXHUwMUZFXFx1MDE4NlxcdTAxOUZcXHVBNzRBXFx1QTc0QydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnT0knLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAxQTInXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ09PJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzRFJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdPVScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDIyMidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnT0UnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwOENcXHUwMTUyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdvZScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA5Q1xcdTAxNTMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1AnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNTBcXHUyNEM1XFx1RkYzMFxcdTFFNTRcXHUxRTU2XFx1MDFBNFxcdTJDNjNcXHVBNzUwXFx1QTc1MlxcdUE3NTQnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1EnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNTFcXHUyNEM2XFx1RkYzMVxcdUE3NTZcXHVBNzU4XFx1MDI0QSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnUicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA1MlxcdTI0QzdcXHVGRjMyXFx1MDE1NFxcdTFFNThcXHUwMTU4XFx1MDIxMFxcdTAyMTJcXHUxRTVBXFx1MUU1Q1xcdTAxNTZcXHUxRTVFXFx1MDI0Q1xcdTJDNjRcXHVBNzVBXFx1QTdBNlxcdUE3ODInXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1MnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNTNcXHUyNEM4XFx1RkYzM1xcdTFFOUVcXHUwMTVBXFx1MUU2NFxcdTAxNUNcXHUxRTYwXFx1MDE2MFxcdTFFNjZcXHUxRTYyXFx1MUU2OFxcdTAyMThcXHUwMTVFXFx1MkM3RVxcdUE3QThcXHVBNzg0J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdUJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDU0XFx1MjRDOVxcdUZGMzRcXHUxRTZBXFx1MDE2NFxcdTFFNkNcXHUwMjFBXFx1MDE2MlxcdTFFNzBcXHUxRTZFXFx1MDE2NlxcdTAxQUNcXHUwMUFFXFx1MDIzRVxcdUE3ODYnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1RaJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzI4J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdVJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDU1XFx1MjRDQVxcdUZGMzVcXHUwMEQ5XFx1MDBEQVxcdTAwREJcXHUwMTY4XFx1MUU3OFxcdTAxNkFcXHUxRTdBXFx1MDE2Q1xcdTAwRENcXHUwMURCXFx1MDFEN1xcdTAxRDVcXHUwMUQ5XFx1MUVFNlxcdTAxNkVcXHUwMTcwXFx1MDFEM1xcdTAyMTRcXHUwMjE2XFx1MDFBRlxcdTFFRUFcXHUxRUU4XFx1MUVFRVxcdTFFRUNcXHUxRUYwXFx1MUVFNFxcdTFFNzJcXHUwMTcyXFx1MUU3NlxcdTFFNzRcXHUwMjQ0J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdWJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDU2XFx1MjRDQlxcdUZGMzZcXHUxRTdDXFx1MUU3RVxcdTAxQjJcXHVBNzVFXFx1MDI0NSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnVlknLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3NjAnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1cnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNTdcXHUyNENDXFx1RkYzN1xcdTFFODBcXHUxRTgyXFx1MDE3NFxcdTFFODZcXHUxRTg0XFx1MUU4OFxcdTJDNzInXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1gnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNThcXHUyNENEXFx1RkYzOFxcdTFFOEFcXHUxRThDJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdZJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDU5XFx1MjRDRVxcdUZGMzlcXHUxRUYyXFx1MDBERFxcdTAxNzZcXHUxRUY4XFx1MDIzMlxcdTFFOEVcXHUwMTc4XFx1MUVGNlxcdTFFRjRcXHUwMUIzXFx1MDI0RVxcdTFFRkUnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1onLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNUFcXHUyNENGXFx1RkYzQVxcdTAxNzlcXHUxRTkwXFx1MDE3QlxcdTAxN0RcXHUxRTkyXFx1MUU5NFxcdTAxQjVcXHUwMjI0XFx1MkM3RlxcdTJDNkJcXHVBNzYyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdhJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDYxXFx1MjREMFxcdUZGNDFcXHUxRTlBXFx1MDBFMFxcdTAwRTFcXHUwMEUyXFx1MUVBN1xcdTFFQTVcXHUxRUFCXFx1MUVBOVxcdTAwRTNcXHUwMTAxXFx1MDEwM1xcdTFFQjFcXHUxRUFGXFx1MUVCNVxcdTFFQjNcXHUwMjI3XFx1MDFFMVxcdTAwRTRcXHUwMURGXFx1MUVBM1xcdTAwRTVcXHUwMUZCXFx1MDFDRVxcdTAyMDFcXHUwMjAzXFx1MUVBMVxcdTFFQURcXHUxRUI3XFx1MUUwMVxcdTAxMDVcXHUyQzY1XFx1MDI1MCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnYWEnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3MzMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2FlJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMEU2XFx1MDFGRFxcdTAxRTMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2FvJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzM1J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdhdScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1QTczNydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnYXYnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3MzlcXHVBNzNCJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdheScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1QTczRCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnYicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2MlxcdTI0RDFcXHVGRjQyXFx1MUUwM1xcdTFFMDVcXHUxRTA3XFx1MDE4MFxcdTAxODNcXHUwMjUzJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdjJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDYzXFx1MjREMlxcdUZGNDNcXHUwMTA3XFx1MDEwOVxcdTAxMEJcXHUwMTBEXFx1MDBFN1xcdTFFMDlcXHUwMTg4XFx1MDIzQ1xcdUE3M0ZcXHUyMTg0J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdkJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDY0XFx1MjREM1xcdUZGNDRcXHUxRTBCXFx1MDEwRlxcdTFFMERcXHUxRTExXFx1MUUxM1xcdTFFMEZcXHUwMTExXFx1MDE4Q1xcdTAyNTZcXHUwMjU3XFx1QTc3QSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnZHonLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAxRjNcXHUwMUM2J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdlJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDY1XFx1MjRENFxcdUZGNDVcXHUwMEU4XFx1MDBFOVxcdTAwRUFcXHUxRUMxXFx1MUVCRlxcdTFFQzVcXHUxRUMzXFx1MUVCRFxcdTAxMTNcXHUxRTE1XFx1MUUxN1xcdTAxMTVcXHUwMTE3XFx1MDBFQlxcdTFFQkJcXHUwMTFCXFx1MDIwNVxcdTAyMDdcXHUxRUI5XFx1MUVDN1xcdTAyMjlcXHUxRTFEXFx1MDExOVxcdTFFMTlcXHUxRTFCXFx1MDI0N1xcdTAyNUJcXHUwMUREJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdmJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDY2XFx1MjRENVxcdUZGNDZcXHUxRTFGXFx1MDE5MlxcdUE3N0MnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2cnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNjdcXHUyNEQ2XFx1RkY0N1xcdTAxRjVcXHUwMTFEXFx1MUUyMVxcdTAxMUZcXHUwMTIxXFx1MDFFN1xcdTAxMjNcXHUwMUU1XFx1MDI2MFxcdUE3QTFcXHUxRDc5XFx1QTc3RidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnaCcsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2OFxcdTI0RDdcXHVGRjQ4XFx1MDEyNVxcdTFFMjNcXHUxRTI3XFx1MDIxRlxcdTFFMjVcXHUxRTI5XFx1MUUyQlxcdTFFOTZcXHUwMTI3XFx1MkM2OFxcdTJDNzZcXHUwMjY1J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdodicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDE5NSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnaScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2OVxcdTI0RDhcXHVGRjQ5XFx1MDBFQ1xcdTAwRURcXHUwMEVFXFx1MDEyOVxcdTAxMkJcXHUwMTJEXFx1MDBFRlxcdTFFMkZcXHUxRUM5XFx1MDFEMFxcdTAyMDlcXHUwMjBCXFx1MUVDQlxcdTAxMkZcXHUxRTJEXFx1MDI2OFxcdTAxMzEnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2onLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNkFcXHUyNEQ5XFx1RkY0QVxcdTAxMzVcXHUwMUYwXFx1MDI0OSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnaycsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2QlxcdTI0REFcXHVGRjRCXFx1MUUzMVxcdTAxRTlcXHUxRTMzXFx1MDEzN1xcdTFFMzVcXHUwMTk5XFx1MkM2QVxcdUE3NDFcXHVBNzQzXFx1QTc0NVxcdUE3QTMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2wnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNkNcXHUyNERCXFx1RkY0Q1xcdTAxNDBcXHUwMTNBXFx1MDEzRVxcdTFFMzdcXHUxRTM5XFx1MDEzQ1xcdTFFM0RcXHUxRTNCXFx1MDE3RlxcdTAxNDJcXHUwMTlBXFx1MDI2QlxcdTJDNjFcXHVBNzQ5XFx1QTc4MVxcdUE3NDcnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2xqJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMUM5J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdtJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDZEXFx1MjREQ1xcdUZGNERcXHUxRTNGXFx1MUU0MVxcdTFFNDNcXHUwMjcxXFx1MDI2RidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnbicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2RVxcdTI0RERcXHVGRjRFXFx1MDFGOVxcdTAxNDRcXHUwMEYxXFx1MUU0NVxcdTAxNDhcXHUxRTQ3XFx1MDE0NlxcdTFFNEJcXHUxRTQ5XFx1MDE5RVxcdTAyNzJcXHUwMTQ5XFx1QTc5MVxcdUE3QTUnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ25qJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMUNDJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdvJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDZGXFx1MjRERVxcdUZGNEZcXHUwMEYyXFx1MDBGM1xcdTAwRjRcXHUxRUQzXFx1MUVEMVxcdTFFRDdcXHUxRUQ1XFx1MDBGNVxcdTFFNERcXHUwMjJEXFx1MUU0RlxcdTAxNERcXHUxRTUxXFx1MUU1M1xcdTAxNEZcXHUwMjJGXFx1MDIzMVxcdTAwRjZcXHUwMjJCXFx1MUVDRlxcdTAxNTFcXHUwMUQyXFx1MDIwRFxcdTAyMEZcXHUwMUExXFx1MUVERFxcdTFFREJcXHUxRUUxXFx1MUVERlxcdTFFRTNcXHUxRUNEXFx1MUVEOVxcdTAxRUJcXHUwMUVEXFx1MDBGOFxcdTAxRkZcXHUwMjU0XFx1QTc0QlxcdUE3NERcXHUwMjc1J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdvaScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDFBMydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnb3UnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAyMjMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ29vJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzRGJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdwJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDcwXFx1MjRERlxcdUZGNTBcXHUxRTU1XFx1MUU1N1xcdTAxQTVcXHUxRDdEXFx1QTc1MVxcdUE3NTNcXHVBNzU1J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdxJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDcxXFx1MjRFMFxcdUZGNTFcXHUwMjRCXFx1QTc1N1xcdUE3NTknXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ3InLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNzJcXHUyNEUxXFx1RkY1MlxcdTAxNTVcXHUxRTU5XFx1MDE1OVxcdTAyMTFcXHUwMjEzXFx1MUU1QlxcdTFFNURcXHUwMTU3XFx1MUU1RlxcdTAyNERcXHUwMjdEXFx1QTc1QlxcdUE3QTdcXHVBNzgzJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdzJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDczXFx1MjRFMlxcdUZGNTNcXHUwMERGXFx1MDE1QlxcdTFFNjVcXHUwMTVEXFx1MUU2MVxcdTAxNjFcXHUxRTY3XFx1MUU2M1xcdTFFNjlcXHUwMjE5XFx1MDE1RlxcdTAyM0ZcXHVBN0E5XFx1QTc4NVxcdTFFOUInXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ3QnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNzRcXHUyNEUzXFx1RkY1NFxcdTFFNkJcXHUxRTk3XFx1MDE2NVxcdTFFNkRcXHUwMjFCXFx1MDE2M1xcdTFFNzFcXHUxRTZGXFx1MDE2N1xcdTAxQURcXHUwMjg4XFx1MkM2NlxcdUE3ODcnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ3R6JyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzI5J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICd1JyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDc1XFx1MjRFNFxcdUZGNTVcXHUwMEY5XFx1MDBGQVxcdTAwRkJcXHUwMTY5XFx1MUU3OVxcdTAxNkJcXHUxRTdCXFx1MDE2RFxcdTAwRkNcXHUwMURDXFx1MDFEOFxcdTAxRDZcXHUwMURBXFx1MUVFN1xcdTAxNkZcXHUwMTcxXFx1MDFENFxcdTAyMTVcXHUwMjE3XFx1MDFCMFxcdTFFRUJcXHUxRUU5XFx1MUVFRlxcdTFFRURcXHUxRUYxXFx1MUVFNVxcdTFFNzNcXHUwMTczXFx1MUU3N1xcdTFFNzVcXHUwMjg5J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICd2JyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDc2XFx1MjRFNVxcdUZGNTZcXHUxRTdEXFx1MUU3RlxcdTAyOEJcXHVBNzVGXFx1MDI4QydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAndnknLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3NjEnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ3cnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNzdcXHUyNEU2XFx1RkY1N1xcdTFFODFcXHUxRTgzXFx1MDE3NVxcdTFFODdcXHUxRTg1XFx1MUU5OFxcdTFFODlcXHUyQzczJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICd4JyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDc4XFx1MjRFN1xcdUZGNThcXHUxRThCXFx1MUU4RCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAneScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA3OVxcdTI0RThcXHVGRjU5XFx1MUVGM1xcdTAwRkRcXHUwMTc3XFx1MUVGOVxcdTAyMzNcXHUxRThGXFx1MDBGRlxcdTFFRjdcXHUxRTk5XFx1MUVGNVxcdTAxQjRcXHUwMjRGXFx1MUVGRidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAneicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA3QVxcdTI0RTlcXHVGRjVBXFx1MDE3QVxcdTFFOTFcXHUwMTdDXFx1MDE3RVxcdTFFOTNcXHUxRTk1XFx1MDFCNlxcdTAyMjVcXHUwMjQwXFx1MkM2Q1xcdUE3NjMnXG4gICAgICB9XG4gIF1cbn07XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFVuaWNvZGVTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBwcml2YXRlIGRlZmF1bHREaWFjcml0aWNzUmVtb3ZhbE1hcDogYW55O1xuICBwcml2YXRlIGRpYWNyaXRpY3NNYXA6IE9iamVjdDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRlZmF1bHREaWFjcml0aWNzUmVtb3ZhbE1hcCA9IGRpYWNyaXRpY3NSZW1vdmFsTWFwLmRlZmF1bHQ7XG4gICAgdGhpcy5kaWFjcml0aWNzTWFwID0ge307XG4gICAgdGhpcy5kZWZhdWx0RGlhY3JpdGljc1JlbW92YWxNYXAuZm9yRWFjaCh2YWx1ZSA9PiB2YWx1ZS5sZXR0ZXJzLnNwbGl0KCcnKS5mb3JFYWNoKChjaGFyKSA9PiB0aGlzLmRpYWNyaXRpY3NNYXBbY2hhcl0gPSB2YWx1ZS5iYXNlKSk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlRGlhY3JpdGljcyhzdHI6IGFueSkge1xuICAgIGlmKHN0ciA9PT0gbnVsbCB8fCBzdHIgPT09IHVuZGVmaW5lZCkgeyByZXR1cm4gc3RyOyB9XG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlKC9bXlxcdTAwMDAtXFx1MDA3RV0vZywgKGE6IHN0cmluZyB8IG51bWJlcikgPT4gdGhpcy5kaWFjcml0aWNzTWFwW2FdIHx8IGEpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kaWFjcml0aWNzTWFwID0ge307XG4gIH1cblxufVxuIl19