@aws-amplify/graphql-api-construct 1.18.3 → 1.18.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (986) hide show
  1. package/.jsii +162 -187
  2. package/CHANGELOG.md +8 -0
  3. package/jest.config.js +0 -7
  4. package/lib/amplify-dynamodb-table-wrapper.js +1 -1
  5. package/lib/amplify-graphql-api.js +1 -1
  6. package/lib/amplify-graphql-definition.js +1 -1
  7. package/lib/index.js +23 -1
  8. package/lib/sql-model-datasource-strategy.js +1 -1
  9. package/lib/types.js +11 -1
  10. package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +4 -0
  11. package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +10 -11
  12. package/node_modules/@aws-amplify/graphql-conversation-transformer/CHANGELOG.md +4 -0
  13. package/node_modules/@aws-amplify/graphql-conversation-transformer/package.json +7 -8
  14. package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +4 -0
  15. package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +5 -6
  16. package/node_modules/@aws-amplify/graphql-directives/package.json +1 -2
  17. package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +4 -0
  18. package/node_modules/@aws-amplify/graphql-function-transformer/package.json +4 -5
  19. package/node_modules/@aws-amplify/graphql-generation-transformer/CHANGELOG.md +4 -0
  20. package/node_modules/@aws-amplify/graphql-generation-transformer/package.json +4 -5
  21. package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +4 -0
  22. package/node_modules/@aws-amplify/graphql-http-transformer/package.json +4 -5
  23. package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +4 -0
  24. package/node_modules/@aws-amplify/graphql-index-transformer/package.json +5 -6
  25. package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +4 -0
  26. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
  27. package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +8 -9
  28. package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +4 -0
  29. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
  30. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
  31. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
  32. package/node_modules/@aws-amplify/graphql-model-transformer/package.json +4 -5
  33. package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +4 -0
  34. package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
  35. package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +4 -5
  36. package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +4 -0
  37. package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +6 -7
  38. package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +4 -0
  39. package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
  40. package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +5 -6
  41. package/node_modules/@aws-amplify/graphql-sql-transformer/CHANGELOG.md +4 -0
  42. package/node_modules/@aws-amplify/graphql-sql-transformer/package.json +5 -6
  43. package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +4 -0
  44. package/node_modules/@aws-amplify/graphql-transformer/package.json +17 -18
  45. package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +4 -0
  46. package/node_modules/@aws-amplify/graphql-transformer-core/package.json +2 -4
  47. package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +1 -2
  48. package/node_modules/graphql-mapping-template/package.json +1 -2
  49. package/node_modules/graphql-transformer-common/package.json +1 -2
  50. package/package.json +18 -68
  51. package/src/index.ts +33 -0
  52. package/src/types.ts +100 -0
  53. package/node_modules/@aws-amplify/graphql-auth-transformer/LICENSE +0 -201
  54. package/node_modules/@aws-amplify/graphql-conversation-transformer/LICENSE +0 -201
  55. package/node_modules/@aws-amplify/graphql-default-value-transformer/LICENSE +0 -201
  56. package/node_modules/@aws-amplify/graphql-directives/LICENSE +0 -201
  57. package/node_modules/@aws-amplify/graphql-function-transformer/LICENSE +0 -201
  58. package/node_modules/@aws-amplify/graphql-generation-transformer/LICENSE +0 -201
  59. package/node_modules/@aws-amplify/graphql-http-transformer/LICENSE +0 -201
  60. package/node_modules/@aws-amplify/graphql-index-transformer/LICENSE +0 -201
  61. package/node_modules/@aws-amplify/graphql-maps-to-transformer/LICENSE +0 -201
  62. package/node_modules/@aws-amplify/graphql-model-transformer/LICENSE +0 -201
  63. package/node_modules/@aws-amplify/graphql-predictions-transformer/LICENSE +0 -201
  64. package/node_modules/@aws-amplify/graphql-relational-transformer/LICENSE +0 -201
  65. package/node_modules/@aws-amplify/graphql-searchable-transformer/LICENSE +0 -201
  66. package/node_modules/@aws-amplify/graphql-sql-transformer/LICENSE +0 -201
  67. package/node_modules/@aws-amplify/graphql-transformer/LICENSE +0 -201
  68. package/node_modules/@aws-amplify/graphql-transformer-core/LICENSE +0 -201
  69. package/node_modules/@aws-amplify/graphql-transformer-interfaces/LICENSE +0 -201
  70. package/node_modules/@aws-cdk/assert/BUILD.md +0 -15
  71. package/node_modules/@aws-cdk/assert/LICENSE +0 -201
  72. package/node_modules/@aws-cdk/assert/NOTICE +0 -2
  73. package/node_modules/@aws-cdk/assert/README.md +0 -228
  74. package/node_modules/@aws-cdk/assert/clone.sh +0 -29
  75. package/node_modules/@aws-cdk/assert/jest.d.ts +0 -14
  76. package/node_modules/@aws-cdk/assert/jest.js +0 -57
  77. package/node_modules/@aws-cdk/assert/lib/assertion.d.ts +0 -17
  78. package/node_modules/@aws-cdk/assert/lib/assertion.js +0 -31
  79. package/node_modules/@aws-cdk/assert/lib/assertions/and-assertion.d.ts +0 -10
  80. package/node_modules/@aws-cdk/assert/lib/assertions/and-assertion.js +0 -21
  81. package/node_modules/@aws-cdk/assert/lib/assertions/count-resources.d.ts +0 -10
  82. package/node_modules/@aws-cdk/assert/lib/assertions/count-resources.js +0 -54
  83. package/node_modules/@aws-cdk/assert/lib/assertions/exist.d.ts +0 -3
  84. package/node_modules/@aws-cdk/assert/lib/assertions/exist.js +0 -18
  85. package/node_modules/@aws-cdk/assert/lib/assertions/have-output.d.ts +0 -29
  86. package/node_modules/@aws-cdk/assert/lib/assertions/have-output.js +0 -77
  87. package/node_modules/@aws-cdk/assert/lib/assertions/have-resource-matchers.d.ts +0 -123
  88. package/node_modules/@aws-cdk/assert/lib/assertions/have-resource-matchers.js +0 -404
  89. package/node_modules/@aws-cdk/assert/lib/assertions/have-resource.d.ts +0 -69
  90. package/node_modules/@aws-cdk/assert/lib/assertions/have-resource.js +0 -130
  91. package/node_modules/@aws-cdk/assert/lib/assertions/have-type.d.ts +0 -3
  92. package/node_modules/@aws-cdk/assert/lib/assertions/have-type.js +0 -22
  93. package/node_modules/@aws-cdk/assert/lib/assertions/match-template.d.ts +0 -19
  94. package/node_modules/@aws-cdk/assert/lib/assertions/match-template.js +0 -98
  95. package/node_modules/@aws-cdk/assert/lib/assertions/negated-assertion.d.ts +0 -8
  96. package/node_modules/@aws-cdk/assert/lib/assertions/negated-assertion.js +0 -18
  97. package/node_modules/@aws-cdk/assert/lib/canonicalize-assets.d.ts +0 -11
  98. package/node_modules/@aws-cdk/assert/lib/canonicalize-assets.js +0 -70
  99. package/node_modules/@aws-cdk/assert/lib/expect.d.ts +0 -4
  100. package/node_modules/@aws-cdk/assert/lib/expect.js +0 -16
  101. package/node_modules/@aws-cdk/assert/lib/index.d.ts +0 -14
  102. package/node_modules/@aws-cdk/assert/lib/index.js +0 -27
  103. package/node_modules/@aws-cdk/assert/lib/inspector.d.ts +0 -31
  104. package/node_modules/@aws-cdk/assert/lib/inspector.js +0 -69
  105. package/node_modules/@aws-cdk/assert/lib/synth-utils.d.ts +0 -30
  106. package/node_modules/@aws-cdk/assert/lib/synth-utils.js +0 -92
  107. package/node_modules/@aws-cdk/assert/package.json +0 -77
  108. package/node_modules/@aws-cdk/cfnspec/CHANGELOG.md +0 -16795
  109. package/node_modules/@aws-cdk/cfnspec/LICENSE +0 -201
  110. package/node_modules/@aws-cdk/cfnspec/NOTICE +0 -2
  111. package/node_modules/@aws-cdk/cfnspec/README.md +0 -14
  112. package/node_modules/@aws-cdk/cfnspec/build-tools/build.d.ts +0 -1
  113. package/node_modules/@aws-cdk/cfnspec/build-tools/build.js +0 -37
  114. package/node_modules/@aws-cdk/cfnspec/build-tools/create-missing-libraries.d.ts +0 -6
  115. package/node_modules/@aws-cdk/cfnspec/build-tools/create-missing-libraries.js +0 -311
  116. package/node_modules/@aws-cdk/cfnspec/build-tools/massage-spec.d.ts +0 -10
  117. package/node_modules/@aws-cdk/cfnspec/build-tools/massage-spec.js +0 -70
  118. package/node_modules/@aws-cdk/cfnspec/build-tools/patch-set.d.ts +0 -25
  119. package/node_modules/@aws-cdk/cfnspec/build-tools/patch-set.js +0 -241
  120. package/node_modules/@aws-cdk/cfnspec/build-tools/report-issues.d.ts +0 -9
  121. package/node_modules/@aws-cdk/cfnspec/build-tools/report-issues.js +0 -72
  122. package/node_modules/@aws-cdk/cfnspec/build-tools/scrutiny.d.ts +0 -12
  123. package/node_modules/@aws-cdk/cfnspec/build-tools/scrutiny.js +0 -85
  124. package/node_modules/@aws-cdk/cfnspec/build-tools/spec-diff.d.ts +0 -1
  125. package/node_modules/@aws-cdk/cfnspec/build-tools/spec-diff.js +0 -248
  126. package/node_modules/@aws-cdk/cfnspec/build-tools/split-spec-by-service.d.ts +0 -1
  127. package/node_modules/@aws-cdk/cfnspec/build-tools/split-spec-by-service.js +0 -120
  128. package/node_modules/@aws-cdk/cfnspec/build-tools/template/LICENSE +0 -201
  129. package/node_modules/@aws-cdk/cfnspec/build-tools/template/NOTICE +0 -2
  130. package/node_modules/@aws-cdk/cfnspec/build-tools/update-cfnlint.sh +0 -18
  131. package/node_modules/@aws-cdk/cfnspec/build-tools/update-metrics.sh +0 -15
  132. package/node_modules/@aws-cdk/cfnspec/build-tools/update.sh +0 -113
  133. package/node_modules/@aws-cdk/cfnspec/build-tools/validate-cfn.d.ts +0 -67
  134. package/node_modules/@aws-cdk/cfnspec/build-tools/validate-cfn.js +0 -285
  135. package/node_modules/@aws-cdk/cfnspec/cfn.version +0 -1
  136. package/node_modules/@aws-cdk/cfnspec/lib/_private_schema/cfn-lint.d.ts +0 -24
  137. package/node_modules/@aws-cdk/cfnspec/lib/_private_schema/cfn-lint.js +0 -3
  138. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_EC2_VPNConnection.json +0 -27
  139. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_Lambda_Function.json +0 -27
  140. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_RDS_DBCluster.json +0 -70
  141. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_RDS_DBInstance.json +0 -37
  142. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_SNS_Topic.json +0 -52
  143. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_SQS_Queue.json +0 -53
  144. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics/README.md +0 -168
  145. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics/canned-metrics-schema.d.ts +0 -60
  146. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics/canned-metrics-schema.js +0 -12
  147. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics/services.json +0 -31957
  148. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics.d.ts +0 -41
  149. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics.js +0 -75
  150. package/node_modules/@aws-cdk/cfnspec/lib/index.d.ts +0 -63
  151. package/node_modules/@aws-cdk/cfnspec/lib/index.js +0 -200
  152. package/node_modules/@aws-cdk/cfnspec/lib/schema/augmentation.d.ts +0 -87
  153. package/node_modules/@aws-cdk/cfnspec/lib/schema/augmentation.js +0 -28
  154. package/node_modules/@aws-cdk/cfnspec/lib/schema/base-types.d.ts +0 -14
  155. package/node_modules/@aws-cdk/cfnspec/lib/schema/base-types.js +0 -29
  156. package/node_modules/@aws-cdk/cfnspec/lib/schema/cfn-lint.d.ts +0 -13
  157. package/node_modules/@aws-cdk/cfnspec/lib/schema/cfn-lint.js +0 -3
  158. package/node_modules/@aws-cdk/cfnspec/lib/schema/docs.d.ts +0 -20
  159. package/node_modules/@aws-cdk/cfnspec/lib/schema/docs.js +0 -3
  160. package/node_modules/@aws-cdk/cfnspec/lib/schema/index.d.ts +0 -7
  161. package/node_modules/@aws-cdk/cfnspec/lib/schema/index.js +0 -20
  162. package/node_modules/@aws-cdk/cfnspec/lib/schema/property.d.ts +0 -179
  163. package/node_modules/@aws-cdk/cfnspec/lib/schema/property.js +0 -168
  164. package/node_modules/@aws-cdk/cfnspec/lib/schema/resource-type.d.ts +0 -118
  165. package/node_modules/@aws-cdk/cfnspec/lib/schema/resource-type.js +0 -99
  166. package/node_modules/@aws-cdk/cfnspec/lib/schema/specification.d.ts +0 -56
  167. package/node_modules/@aws-cdk/cfnspec/lib/schema/specification.js +0 -11
  168. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/CHANGELOG.md +0 -902
  169. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/LICENSE +0 -15
  170. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/README.md +0 -264
  171. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/copy/copy.js +0 -232
  172. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/copy/index.js +0 -6
  173. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/copy-sync/copy-sync.js +0 -166
  174. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/copy-sync/index.js +0 -5
  175. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/empty/index.js +0 -48
  176. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/file.js +0 -69
  177. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/index.js +0 -23
  178. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/link.js +0 -61
  179. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/symlink-paths.js +0 -99
  180. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/symlink-type.js +0 -31
  181. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/symlink.js +0 -63
  182. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/fs/index.js +0 -130
  183. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/index.js +0 -27
  184. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/json/index.js +0 -16
  185. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/json/jsonfile.js +0 -11
  186. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/json/output-json-sync.js +0 -12
  187. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/json/output-json.js +0 -12
  188. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/mkdirs/index.js +0 -14
  189. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/mkdirs/make-dir.js +0 -141
  190. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/move/index.js +0 -6
  191. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/move/move.js +0 -65
  192. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/move-sync/index.js +0 -5
  193. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/move-sync/move-sync.js +0 -47
  194. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/output/index.js +0 -40
  195. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/path-exists/index.js +0 -12
  196. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/remove/index.js +0 -9
  197. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/remove/rimraf.js +0 -302
  198. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/util/stat.js +0 -139
  199. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/util/utimes.js +0 -26
  200. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/package.json +0 -70
  201. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/CHANGELOG.md +0 -171
  202. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/LICENSE +0 -15
  203. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/README.md +0 -230
  204. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/index.js +0 -88
  205. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/package.json +0 -40
  206. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/utils.js +0 -14
  207. package/node_modules/@aws-cdk/cfnspec/node_modules/universalify/LICENSE +0 -20
  208. package/node_modules/@aws-cdk/cfnspec/node_modules/universalify/README.md +0 -76
  209. package/node_modules/@aws-cdk/cfnspec/node_modules/universalify/index.js +0 -24
  210. package/node_modules/@aws-cdk/cfnspec/node_modules/universalify/package.json +0 -34
  211. package/node_modules/@aws-cdk/cfnspec/package.json +0 -63
  212. package/node_modules/@aws-cdk/cfnspec/spec/cfn-docs.json +0 -51044
  213. package/node_modules/@aws-cdk/cfnspec/spec/cfn-lint.json +0 -35
  214. package/node_modules/@aws-cdk/cfnspec/spec/specification.json +0 -148332
  215. package/node_modules/@aws-cdk/cloudformation-diff/LICENSE +0 -201
  216. package/node_modules/@aws-cdk/cloudformation-diff/NOTICE +0 -2
  217. package/node_modules/@aws-cdk/cloudformation-diff/README.md +0 -12
  218. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/index.d.ts +0 -9
  219. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/index.js +0 -94
  220. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/types.d.ts +0 -326
  221. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/types.js +0 -457
  222. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/util.d.ts +0 -41
  223. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/util.js +0 -165
  224. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff-template.d.ts +0 -21
  225. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff-template.js +0 -166
  226. package/node_modules/@aws-cdk/cloudformation-diff/lib/diffable.d.ts +0 -22
  227. package/node_modules/@aws-cdk/cloudformation-diff/lib/diffable.js +0 -47
  228. package/node_modules/@aws-cdk/cloudformation-diff/lib/format-table.d.ts +0 -6
  229. package/node_modules/@aws-cdk/cloudformation-diff/lib/format-table.js +0 -109
  230. package/node_modules/@aws-cdk/cloudformation-diff/lib/format.d.ts +0 -23
  231. package/node_modules/@aws-cdk/cloudformation-diff/lib/format.js +0 -414
  232. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/iam-changes.d.ts +0 -62
  233. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/iam-changes.js +0 -246
  234. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/managed-policy.d.ts +0 -18
  235. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/managed-policy.js +0 -29
  236. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/statement.d.ts +0 -127
  237. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/statement.js +0 -268
  238. package/node_modules/@aws-cdk/cloudformation-diff/lib/index.d.ts +0 -4
  239. package/node_modules/@aws-cdk/cloudformation-diff/lib/index.js +0 -18
  240. package/node_modules/@aws-cdk/cloudformation-diff/lib/network/security-group-changes.d.ts +0 -32
  241. package/node_modules/@aws-cdk/cloudformation-diff/lib/network/security-group-changes.js +0 -95
  242. package/node_modules/@aws-cdk/cloudformation-diff/lib/network/security-group-rule.d.ts +0 -50
  243. package/node_modules/@aws-cdk/cloudformation-diff/lib/network/security-group-rule.js +0 -91
  244. package/node_modules/@aws-cdk/cloudformation-diff/lib/render-intrinsics.d.ts +0 -21
  245. package/node_modules/@aws-cdk/cloudformation-diff/lib/render-intrinsics.js +0 -79
  246. package/node_modules/@aws-cdk/cloudformation-diff/lib/util.d.ts +0 -7
  247. package/node_modules/@aws-cdk/cloudformation-diff/lib/util.js +0 -63
  248. package/node_modules/@aws-cdk/cloudformation-diff/package.json +0 -60
  249. package/node_modules/ajv/.runkit_example.js +0 -23
  250. package/node_modules/ajv/LICENSE +0 -22
  251. package/node_modules/ajv/README.md +0 -207
  252. package/node_modules/ajv/dist/2019.d.ts +0 -19
  253. package/node_modules/ajv/dist/2019.js +0 -61
  254. package/node_modules/ajv/dist/2019.js.map +0 -1
  255. package/node_modules/ajv/dist/2020.d.ts +0 -19
  256. package/node_modules/ajv/dist/2020.js +0 -55
  257. package/node_modules/ajv/dist/2020.js.map +0 -1
  258. package/node_modules/ajv/dist/ajv.d.ts +0 -18
  259. package/node_modules/ajv/dist/ajv.js +0 -50
  260. package/node_modules/ajv/dist/ajv.js.map +0 -1
  261. package/node_modules/ajv/dist/compile/codegen/code.d.ts +0 -40
  262. package/node_modules/ajv/dist/compile/codegen/code.js +0 -156
  263. package/node_modules/ajv/dist/compile/codegen/code.js.map +0 -1
  264. package/node_modules/ajv/dist/compile/codegen/index.d.ts +0 -79
  265. package/node_modules/ajv/dist/compile/codegen/index.js +0 -697
  266. package/node_modules/ajv/dist/compile/codegen/index.js.map +0 -1
  267. package/node_modules/ajv/dist/compile/codegen/scope.d.ts +0 -79
  268. package/node_modules/ajv/dist/compile/codegen/scope.js +0 -143
  269. package/node_modules/ajv/dist/compile/codegen/scope.js.map +0 -1
  270. package/node_modules/ajv/dist/compile/errors.d.ts +0 -13
  271. package/node_modules/ajv/dist/compile/errors.js +0 -123
  272. package/node_modules/ajv/dist/compile/errors.js.map +0 -1
  273. package/node_modules/ajv/dist/compile/index.d.ts +0 -80
  274. package/node_modules/ajv/dist/compile/index.js +0 -242
  275. package/node_modules/ajv/dist/compile/index.js.map +0 -1
  276. package/node_modules/ajv/dist/compile/jtd/parse.d.ts +0 -4
  277. package/node_modules/ajv/dist/compile/jtd/parse.js +0 -350
  278. package/node_modules/ajv/dist/compile/jtd/parse.js.map +0 -1
  279. package/node_modules/ajv/dist/compile/jtd/serialize.d.ts +0 -4
  280. package/node_modules/ajv/dist/compile/jtd/serialize.js +0 -229
  281. package/node_modules/ajv/dist/compile/jtd/serialize.js.map +0 -1
  282. package/node_modules/ajv/dist/compile/jtd/types.d.ts +0 -6
  283. package/node_modules/ajv/dist/compile/jtd/types.js +0 -14
  284. package/node_modules/ajv/dist/compile/jtd/types.js.map +0 -1
  285. package/node_modules/ajv/dist/compile/names.d.ts +0 -20
  286. package/node_modules/ajv/dist/compile/names.js +0 -28
  287. package/node_modules/ajv/dist/compile/names.js.map +0 -1
  288. package/node_modules/ajv/dist/compile/ref_error.d.ts +0 -6
  289. package/node_modules/ajv/dist/compile/ref_error.js +0 -12
  290. package/node_modules/ajv/dist/compile/ref_error.js.map +0 -1
  291. package/node_modules/ajv/dist/compile/resolve.d.ts +0 -12
  292. package/node_modules/ajv/dist/compile/resolve.js +0 -155
  293. package/node_modules/ajv/dist/compile/resolve.js.map +0 -1
  294. package/node_modules/ajv/dist/compile/rules.d.ts +0 -28
  295. package/node_modules/ajv/dist/compile/rules.js +0 -26
  296. package/node_modules/ajv/dist/compile/rules.js.map +0 -1
  297. package/node_modules/ajv/dist/compile/util.d.ts +0 -40
  298. package/node_modules/ajv/dist/compile/util.js +0 -178
  299. package/node_modules/ajv/dist/compile/util.js.map +0 -1
  300. package/node_modules/ajv/dist/compile/validate/applicability.d.ts +0 -6
  301. package/node_modules/ajv/dist/compile/validate/applicability.js +0 -19
  302. package/node_modules/ajv/dist/compile/validate/applicability.js.map +0 -1
  303. package/node_modules/ajv/dist/compile/validate/boolSchema.d.ts +0 -4
  304. package/node_modules/ajv/dist/compile/validate/boolSchema.js +0 -50
  305. package/node_modules/ajv/dist/compile/validate/boolSchema.js.map +0 -1
  306. package/node_modules/ajv/dist/compile/validate/dataType.d.ts +0 -17
  307. package/node_modules/ajv/dist/compile/validate/dataType.js +0 -203
  308. package/node_modules/ajv/dist/compile/validate/dataType.js.map +0 -1
  309. package/node_modules/ajv/dist/compile/validate/defaults.d.ts +0 -2
  310. package/node_modules/ajv/dist/compile/validate/defaults.js +0 -35
  311. package/node_modules/ajv/dist/compile/validate/defaults.js.map +0 -1
  312. package/node_modules/ajv/dist/compile/validate/index.d.ts +0 -42
  313. package/node_modules/ajv/dist/compile/validate/index.js +0 -520
  314. package/node_modules/ajv/dist/compile/validate/index.js.map +0 -1
  315. package/node_modules/ajv/dist/compile/validate/keyword.d.ts +0 -8
  316. package/node_modules/ajv/dist/compile/validate/keyword.js +0 -124
  317. package/node_modules/ajv/dist/compile/validate/keyword.js.map +0 -1
  318. package/node_modules/ajv/dist/compile/validate/subschema.d.ts +0 -47
  319. package/node_modules/ajv/dist/compile/validate/subschema.js +0 -81
  320. package/node_modules/ajv/dist/compile/validate/subschema.js.map +0 -1
  321. package/node_modules/ajv/dist/core.d.ts +0 -173
  322. package/node_modules/ajv/dist/core.js +0 -618
  323. package/node_modules/ajv/dist/core.js.map +0 -1
  324. package/node_modules/ajv/dist/jtd.d.ts +0 -47
  325. package/node_modules/ajv/dist/jtd.js +0 -72
  326. package/node_modules/ajv/dist/jtd.js.map +0 -1
  327. package/node_modules/ajv/dist/refs/data.json +0 -13
  328. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.d.ts +0 -2
  329. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js +0 -28
  330. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js.map +0 -1
  331. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json +0 -53
  332. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json +0 -17
  333. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json +0 -57
  334. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json +0 -14
  335. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  336. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json +0 -90
  337. package/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json +0 -39
  338. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.d.ts +0 -2
  339. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +0 -30
  340. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js.map +0 -1
  341. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +0 -48
  342. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +0 -17
  343. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +0 -51
  344. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  345. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  346. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  347. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +0 -90
  348. package/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +0 -55
  349. package/node_modules/ajv/dist/refs/json-schema-draft-06.json +0 -137
  350. package/node_modules/ajv/dist/refs/json-schema-draft-07.json +0 -151
  351. package/node_modules/ajv/dist/refs/json-schema-secure.json +0 -88
  352. package/node_modules/ajv/dist/refs/jtd-schema.d.ts +0 -3
  353. package/node_modules/ajv/dist/refs/jtd-schema.js +0 -118
  354. package/node_modules/ajv/dist/refs/jtd-schema.js.map +0 -1
  355. package/node_modules/ajv/dist/runtime/equal.d.ts +0 -6
  356. package/node_modules/ajv/dist/runtime/equal.js +0 -7
  357. package/node_modules/ajv/dist/runtime/equal.js.map +0 -1
  358. package/node_modules/ajv/dist/runtime/parseJson.d.ts +0 -18
  359. package/node_modules/ajv/dist/runtime/parseJson.js +0 -185
  360. package/node_modules/ajv/dist/runtime/parseJson.js.map +0 -1
  361. package/node_modules/ajv/dist/runtime/quote.d.ts +0 -5
  362. package/node_modules/ajv/dist/runtime/quote.js +0 -30
  363. package/node_modules/ajv/dist/runtime/quote.js.map +0 -1
  364. package/node_modules/ajv/dist/runtime/re2.d.ts +0 -6
  365. package/node_modules/ajv/dist/runtime/re2.js +0 -6
  366. package/node_modules/ajv/dist/runtime/re2.js.map +0 -1
  367. package/node_modules/ajv/dist/runtime/timestamp.d.ts +0 -5
  368. package/node_modules/ajv/dist/runtime/timestamp.js +0 -42
  369. package/node_modules/ajv/dist/runtime/timestamp.js.map +0 -1
  370. package/node_modules/ajv/dist/runtime/ucs2length.d.ts +0 -5
  371. package/node_modules/ajv/dist/runtime/ucs2length.js +0 -24
  372. package/node_modules/ajv/dist/runtime/ucs2length.js.map +0 -1
  373. package/node_modules/ajv/dist/runtime/uri.d.ts +0 -6
  374. package/node_modules/ajv/dist/runtime/uri.js +0 -6
  375. package/node_modules/ajv/dist/runtime/uri.js.map +0 -1
  376. package/node_modules/ajv/dist/runtime/validation_error.d.ts +0 -7
  377. package/node_modules/ajv/dist/runtime/validation_error.js +0 -11
  378. package/node_modules/ajv/dist/runtime/validation_error.js.map +0 -1
  379. package/node_modules/ajv/dist/standalone/index.d.ts +0 -6
  380. package/node_modules/ajv/dist/standalone/index.js +0 -90
  381. package/node_modules/ajv/dist/standalone/index.js.map +0 -1
  382. package/node_modules/ajv/dist/standalone/instance.d.ts +0 -12
  383. package/node_modules/ajv/dist/standalone/instance.js +0 -35
  384. package/node_modules/ajv/dist/standalone/instance.js.map +0 -1
  385. package/node_modules/ajv/dist/types/index.d.ts +0 -183
  386. package/node_modules/ajv/dist/types/index.js +0 -3
  387. package/node_modules/ajv/dist/types/index.js.map +0 -1
  388. package/node_modules/ajv/dist/types/json-schema.d.ts +0 -125
  389. package/node_modules/ajv/dist/types/json-schema.js +0 -3
  390. package/node_modules/ajv/dist/types/json-schema.js.map +0 -1
  391. package/node_modules/ajv/dist/types/jtd-schema.d.ts +0 -174
  392. package/node_modules/ajv/dist/types/jtd-schema.js +0 -3
  393. package/node_modules/ajv/dist/types/jtd-schema.js.map +0 -1
  394. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts +0 -8
  395. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +0 -49
  396. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +0 -1
  397. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts +0 -6
  398. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +0 -106
  399. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +0 -1
  400. package/node_modules/ajv/dist/vocabularies/applicator/allOf.d.ts +0 -3
  401. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js +0 -23
  402. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +0 -1
  403. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts +0 -4
  404. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +0 -12
  405. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +0 -1
  406. package/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts +0 -7
  407. package/node_modules/ajv/dist/vocabularies/applicator/contains.js +0 -95
  408. package/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +0 -1
  409. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts +0 -21
  410. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +0 -85
  411. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +0 -1
  412. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.d.ts +0 -3
  413. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +0 -11
  414. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js.map +0 -1
  415. package/node_modules/ajv/dist/vocabularies/applicator/if.d.ts +0 -6
  416. package/node_modules/ajv/dist/vocabularies/applicator/if.js +0 -66
  417. package/node_modules/ajv/dist/vocabularies/applicator/if.js.map +0 -1
  418. package/node_modules/ajv/dist/vocabularies/applicator/index.d.ts +0 -13
  419. package/node_modules/ajv/dist/vocabularies/applicator/index.js +0 -44
  420. package/node_modules/ajv/dist/vocabularies/applicator/index.js.map +0 -1
  421. package/node_modules/ajv/dist/vocabularies/applicator/items.d.ts +0 -5
  422. package/node_modules/ajv/dist/vocabularies/applicator/items.js +0 -52
  423. package/node_modules/ajv/dist/vocabularies/applicator/items.js.map +0 -1
  424. package/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts +0 -6
  425. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js +0 -30
  426. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +0 -1
  427. package/node_modules/ajv/dist/vocabularies/applicator/not.d.ts +0 -4
  428. package/node_modules/ajv/dist/vocabularies/applicator/not.js +0 -26
  429. package/node_modules/ajv/dist/vocabularies/applicator/not.js.map +0 -1
  430. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts +0 -6
  431. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +0 -60
  432. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +0 -1
  433. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.d.ts +0 -3
  434. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +0 -75
  435. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +0 -1
  436. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.d.ts +0 -3
  437. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +0 -12
  438. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +0 -1
  439. package/node_modules/ajv/dist/vocabularies/applicator/properties.d.ts +0 -3
  440. package/node_modules/ajv/dist/vocabularies/applicator/properties.js +0 -54
  441. package/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +0 -1
  442. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts +0 -6
  443. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +0 -38
  444. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +0 -1
  445. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.d.ts +0 -3
  446. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +0 -13
  447. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +0 -1
  448. package/node_modules/ajv/dist/vocabularies/code.d.ts +0 -17
  449. package/node_modules/ajv/dist/vocabularies/code.js +0 -131
  450. package/node_modules/ajv/dist/vocabularies/code.js.map +0 -1
  451. package/node_modules/ajv/dist/vocabularies/core/id.d.ts +0 -3
  452. package/node_modules/ajv/dist/vocabularies/core/id.js +0 -10
  453. package/node_modules/ajv/dist/vocabularies/core/id.js.map +0 -1
  454. package/node_modules/ajv/dist/vocabularies/core/index.d.ts +0 -3
  455. package/node_modules/ajv/dist/vocabularies/core/index.js +0 -16
  456. package/node_modules/ajv/dist/vocabularies/core/index.js.map +0 -1
  457. package/node_modules/ajv/dist/vocabularies/core/ref.d.ts +0 -8
  458. package/node_modules/ajv/dist/vocabularies/core/ref.js +0 -122
  459. package/node_modules/ajv/dist/vocabularies/core/ref.js.map +0 -1
  460. package/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts +0 -5
  461. package/node_modules/ajv/dist/vocabularies/discriminator/index.js +0 -104
  462. package/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +0 -1
  463. package/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts +0 -10
  464. package/node_modules/ajv/dist/vocabularies/discriminator/types.js +0 -9
  465. package/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +0 -1
  466. package/node_modules/ajv/dist/vocabularies/draft2020.d.ts +0 -3
  467. package/node_modules/ajv/dist/vocabularies/draft2020.js +0 -23
  468. package/node_modules/ajv/dist/vocabularies/draft2020.js.map +0 -1
  469. package/node_modules/ajv/dist/vocabularies/draft7.d.ts +0 -3
  470. package/node_modules/ajv/dist/vocabularies/draft7.js +0 -17
  471. package/node_modules/ajv/dist/vocabularies/draft7.js.map +0 -1
  472. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.d.ts +0 -5
  473. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +0 -30
  474. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js.map +0 -1
  475. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.d.ts +0 -5
  476. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +0 -51
  477. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js.map +0 -1
  478. package/node_modules/ajv/dist/vocabularies/dynamic/index.d.ts +0 -3
  479. package/node_modules/ajv/dist/vocabularies/dynamic/index.js +0 -9
  480. package/node_modules/ajv/dist/vocabularies/dynamic/index.js.map +0 -1
  481. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.d.ts +0 -3
  482. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +0 -16
  483. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js.map +0 -1
  484. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.d.ts +0 -3
  485. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +0 -10
  486. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js.map +0 -1
  487. package/node_modules/ajv/dist/vocabularies/errors.d.ts +0 -9
  488. package/node_modules/ajv/dist/vocabularies/errors.js +0 -3
  489. package/node_modules/ajv/dist/vocabularies/errors.js.map +0 -1
  490. package/node_modules/ajv/dist/vocabularies/format/format.d.ts +0 -8
  491. package/node_modules/ajv/dist/vocabularies/format/format.js +0 -92
  492. package/node_modules/ajv/dist/vocabularies/format/format.js.map +0 -1
  493. package/node_modules/ajv/dist/vocabularies/format/index.d.ts +0 -3
  494. package/node_modules/ajv/dist/vocabularies/format/index.js +0 -6
  495. package/node_modules/ajv/dist/vocabularies/format/index.js.map +0 -1
  496. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.d.ts +0 -6
  497. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js +0 -71
  498. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js.map +0 -1
  499. package/node_modules/ajv/dist/vocabularies/jtd/elements.d.ts +0 -5
  500. package/node_modules/ajv/dist/vocabularies/jtd/elements.js +0 -24
  501. package/node_modules/ajv/dist/vocabularies/jtd/elements.js.map +0 -1
  502. package/node_modules/ajv/dist/vocabularies/jtd/enum.d.ts +0 -6
  503. package/node_modules/ajv/dist/vocabularies/jtd/enum.js +0 -43
  504. package/node_modules/ajv/dist/vocabularies/jtd/enum.js.map +0 -1
  505. package/node_modules/ajv/dist/vocabularies/jtd/error.d.ts +0 -9
  506. package/node_modules/ajv/dist/vocabularies/jtd/error.js +0 -20
  507. package/node_modules/ajv/dist/vocabularies/jtd/error.js.map +0 -1
  508. package/node_modules/ajv/dist/vocabularies/jtd/index.d.ts +0 -10
  509. package/node_modules/ajv/dist/vocabularies/jtd/index.js +0 -29
  510. package/node_modules/ajv/dist/vocabularies/jtd/index.js.map +0 -1
  511. package/node_modules/ajv/dist/vocabularies/jtd/metadata.d.ts +0 -5
  512. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js +0 -25
  513. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js.map +0 -1
  514. package/node_modules/ajv/dist/vocabularies/jtd/nullable.d.ts +0 -4
  515. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js +0 -22
  516. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js.map +0 -1
  517. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.d.ts +0 -3
  518. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js +0 -15
  519. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js.map +0 -1
  520. package/node_modules/ajv/dist/vocabularies/jtd/properties.d.ts +0 -22
  521. package/node_modules/ajv/dist/vocabularies/jtd/properties.js +0 -149
  522. package/node_modules/ajv/dist/vocabularies/jtd/properties.js.map +0 -1
  523. package/node_modules/ajv/dist/vocabularies/jtd/ref.d.ts +0 -4
  524. package/node_modules/ajv/dist/vocabularies/jtd/ref.js +0 -67
  525. package/node_modules/ajv/dist/vocabularies/jtd/ref.js.map +0 -1
  526. package/node_modules/ajv/dist/vocabularies/jtd/type.d.ts +0 -10
  527. package/node_modules/ajv/dist/vocabularies/jtd/type.js +0 -69
  528. package/node_modules/ajv/dist/vocabularies/jtd/type.js.map +0 -1
  529. package/node_modules/ajv/dist/vocabularies/jtd/union.d.ts +0 -3
  530. package/node_modules/ajv/dist/vocabularies/jtd/union.js +0 -12
  531. package/node_modules/ajv/dist/vocabularies/jtd/union.js.map +0 -1
  532. package/node_modules/ajv/dist/vocabularies/jtd/values.d.ts +0 -5
  533. package/node_modules/ajv/dist/vocabularies/jtd/values.js +0 -51
  534. package/node_modules/ajv/dist/vocabularies/jtd/values.js.map +0 -1
  535. package/node_modules/ajv/dist/vocabularies/metadata.d.ts +0 -3
  536. package/node_modules/ajv/dist/vocabularies/metadata.js +0 -18
  537. package/node_modules/ajv/dist/vocabularies/metadata.js.map +0 -1
  538. package/node_modules/ajv/dist/vocabularies/next.d.ts +0 -3
  539. package/node_modules/ajv/dist/vocabularies/next.js +0 -8
  540. package/node_modules/ajv/dist/vocabularies/next.js.map +0 -1
  541. package/node_modules/ajv/dist/vocabularies/unevaluated/index.d.ts +0 -3
  542. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js +0 -7
  543. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js.map +0 -1
  544. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts +0 -6
  545. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +0 -40
  546. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js.map +0 -1
  547. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts +0 -6
  548. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +0 -65
  549. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js.map +0 -1
  550. package/node_modules/ajv/dist/vocabularies/validation/const.d.ts +0 -6
  551. package/node_modules/ajv/dist/vocabularies/validation/const.js +0 -25
  552. package/node_modules/ajv/dist/vocabularies/validation/const.js.map +0 -1
  553. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts +0 -5
  554. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +0 -12
  555. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js.map +0 -1
  556. package/node_modules/ajv/dist/vocabularies/validation/enum.d.ts +0 -8
  557. package/node_modules/ajv/dist/vocabularies/validation/enum.js +0 -48
  558. package/node_modules/ajv/dist/vocabularies/validation/enum.js.map +0 -1
  559. package/node_modules/ajv/dist/vocabularies/validation/index.d.ts +0 -16
  560. package/node_modules/ajv/dist/vocabularies/validation/index.js +0 -33
  561. package/node_modules/ajv/dist/vocabularies/validation/index.js.map +0 -1
  562. package/node_modules/ajv/dist/vocabularies/validation/limitContains.d.ts +0 -3
  563. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js +0 -15
  564. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js.map +0 -1
  565. package/node_modules/ajv/dist/vocabularies/validation/limitItems.d.ts +0 -3
  566. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js +0 -24
  567. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +0 -1
  568. package/node_modules/ajv/dist/vocabularies/validation/limitLength.d.ts +0 -3
  569. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js +0 -27
  570. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +0 -1
  571. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts +0 -11
  572. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +0 -27
  573. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +0 -1
  574. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.d.ts +0 -3
  575. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +0 -24
  576. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +0 -1
  577. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts +0 -8
  578. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +0 -26
  579. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +0 -1
  580. package/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts +0 -8
  581. package/node_modules/ajv/dist/vocabularies/validation/pattern.js +0 -24
  582. package/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +0 -1
  583. package/node_modules/ajv/dist/vocabularies/validation/required.d.ts +0 -8
  584. package/node_modules/ajv/dist/vocabularies/validation/required.js +0 -79
  585. package/node_modules/ajv/dist/vocabularies/validation/required.js.map +0 -1
  586. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts +0 -9
  587. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +0 -64
  588. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +0 -1
  589. package/node_modules/ajv/lib/2019.ts +0 -81
  590. package/node_modules/ajv/lib/2020.ts +0 -75
  591. package/node_modules/ajv/lib/ajv.ts +0 -70
  592. package/node_modules/ajv/lib/compile/codegen/code.ts +0 -169
  593. package/node_modules/ajv/lib/compile/codegen/index.ts +0 -852
  594. package/node_modules/ajv/lib/compile/codegen/scope.ts +0 -215
  595. package/node_modules/ajv/lib/compile/errors.ts +0 -184
  596. package/node_modules/ajv/lib/compile/index.ts +0 -324
  597. package/node_modules/ajv/lib/compile/jtd/parse.ts +0 -411
  598. package/node_modules/ajv/lib/compile/jtd/serialize.ts +0 -266
  599. package/node_modules/ajv/lib/compile/jtd/types.ts +0 -16
  600. package/node_modules/ajv/lib/compile/names.ts +0 -27
  601. package/node_modules/ajv/lib/compile/ref_error.ts +0 -13
  602. package/node_modules/ajv/lib/compile/resolve.ts +0 -149
  603. package/node_modules/ajv/lib/compile/rules.ts +0 -50
  604. package/node_modules/ajv/lib/compile/util.ts +0 -213
  605. package/node_modules/ajv/lib/compile/validate/applicability.ts +0 -22
  606. package/node_modules/ajv/lib/compile/validate/boolSchema.ts +0 -47
  607. package/node_modules/ajv/lib/compile/validate/dataType.ts +0 -230
  608. package/node_modules/ajv/lib/compile/validate/defaults.ts +0 -32
  609. package/node_modules/ajv/lib/compile/validate/index.ts +0 -582
  610. package/node_modules/ajv/lib/compile/validate/keyword.ts +0 -171
  611. package/node_modules/ajv/lib/compile/validate/subschema.ts +0 -135
  612. package/node_modules/ajv/lib/core.ts +0 -891
  613. package/node_modules/ajv/lib/jtd.ts +0 -132
  614. package/node_modules/ajv/lib/refs/data.json +0 -13
  615. package/node_modules/ajv/lib/refs/json-schema-2019-09/index.ts +0 -28
  616. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/applicator.json +0 -53
  617. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/content.json +0 -17
  618. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/core.json +0 -57
  619. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/format.json +0 -14
  620. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  621. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/validation.json +0 -90
  622. package/node_modules/ajv/lib/refs/json-schema-2019-09/schema.json +0 -39
  623. package/node_modules/ajv/lib/refs/json-schema-2020-12/index.ts +0 -30
  624. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/applicator.json +0 -48
  625. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/content.json +0 -17
  626. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/core.json +0 -51
  627. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  628. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  629. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  630. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/validation.json +0 -90
  631. package/node_modules/ajv/lib/refs/json-schema-2020-12/schema.json +0 -55
  632. package/node_modules/ajv/lib/refs/json-schema-draft-06.json +0 -137
  633. package/node_modules/ajv/lib/refs/json-schema-draft-07.json +0 -151
  634. package/node_modules/ajv/lib/refs/json-schema-secure.json +0 -88
  635. package/node_modules/ajv/lib/refs/jtd-schema.ts +0 -130
  636. package/node_modules/ajv/lib/runtime/equal.ts +0 -7
  637. package/node_modules/ajv/lib/runtime/parseJson.ts +0 -177
  638. package/node_modules/ajv/lib/runtime/quote.ts +0 -31
  639. package/node_modules/ajv/lib/runtime/re2.ts +0 -6
  640. package/node_modules/ajv/lib/runtime/timestamp.ts +0 -46
  641. package/node_modules/ajv/lib/runtime/ucs2length.ts +0 -20
  642. package/node_modules/ajv/lib/runtime/uri.ts +0 -6
  643. package/node_modules/ajv/lib/runtime/validation_error.ts +0 -13
  644. package/node_modules/ajv/lib/standalone/index.ts +0 -100
  645. package/node_modules/ajv/lib/standalone/instance.ts +0 -36
  646. package/node_modules/ajv/lib/types/index.ts +0 -244
  647. package/node_modules/ajv/lib/types/json-schema.ts +0 -187
  648. package/node_modules/ajv/lib/types/jtd-schema.ts +0 -273
  649. package/node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts +0 -56
  650. package/node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts +0 -118
  651. package/node_modules/ajv/lib/vocabularies/applicator/allOf.ts +0 -22
  652. package/node_modules/ajv/lib/vocabularies/applicator/anyOf.ts +0 -14
  653. package/node_modules/ajv/lib/vocabularies/applicator/contains.ts +0 -109
  654. package/node_modules/ajv/lib/vocabularies/applicator/dependencies.ts +0 -112
  655. package/node_modules/ajv/lib/vocabularies/applicator/dependentSchemas.ts +0 -11
  656. package/node_modules/ajv/lib/vocabularies/applicator/if.ts +0 -80
  657. package/node_modules/ajv/lib/vocabularies/applicator/index.ts +0 -53
  658. package/node_modules/ajv/lib/vocabularies/applicator/items.ts +0 -59
  659. package/node_modules/ajv/lib/vocabularies/applicator/items2020.ts +0 -36
  660. package/node_modules/ajv/lib/vocabularies/applicator/not.ts +0 -38
  661. package/node_modules/ajv/lib/vocabularies/applicator/oneOf.ts +0 -82
  662. package/node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts +0 -91
  663. package/node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts +0 -12
  664. package/node_modules/ajv/lib/vocabularies/applicator/properties.ts +0 -57
  665. package/node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts +0 -50
  666. package/node_modules/ajv/lib/vocabularies/applicator/thenElse.ts +0 -13
  667. package/node_modules/ajv/lib/vocabularies/code.ts +0 -168
  668. package/node_modules/ajv/lib/vocabularies/core/id.ts +0 -10
  669. package/node_modules/ajv/lib/vocabularies/core/index.ts +0 -16
  670. package/node_modules/ajv/lib/vocabularies/core/ref.ts +0 -129
  671. package/node_modules/ajv/lib/vocabularies/discriminator/index.ts +0 -113
  672. package/node_modules/ajv/lib/vocabularies/discriminator/types.ts +0 -12
  673. package/node_modules/ajv/lib/vocabularies/draft2020.ts +0 -23
  674. package/node_modules/ajv/lib/vocabularies/draft7.ts +0 -17
  675. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicAnchor.ts +0 -31
  676. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicRef.ts +0 -51
  677. package/node_modules/ajv/lib/vocabularies/dynamic/index.ts +0 -9
  678. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveAnchor.ts +0 -14
  679. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveRef.ts +0 -10
  680. package/node_modules/ajv/lib/vocabularies/errors.ts +0 -18
  681. package/node_modules/ajv/lib/vocabularies/format/format.ts +0 -120
  682. package/node_modules/ajv/lib/vocabularies/format/index.ts +0 -6
  683. package/node_modules/ajv/lib/vocabularies/jtd/discriminator.ts +0 -89
  684. package/node_modules/ajv/lib/vocabularies/jtd/elements.ts +0 -32
  685. package/node_modules/ajv/lib/vocabularies/jtd/enum.ts +0 -45
  686. package/node_modules/ajv/lib/vocabularies/jtd/error.ts +0 -23
  687. package/node_modules/ajv/lib/vocabularies/jtd/index.ts +0 -37
  688. package/node_modules/ajv/lib/vocabularies/jtd/metadata.ts +0 -24
  689. package/node_modules/ajv/lib/vocabularies/jtd/nullable.ts +0 -21
  690. package/node_modules/ajv/lib/vocabularies/jtd/optionalProperties.ts +0 -15
  691. package/node_modules/ajv/lib/vocabularies/jtd/properties.ts +0 -184
  692. package/node_modules/ajv/lib/vocabularies/jtd/ref.ts +0 -76
  693. package/node_modules/ajv/lib/vocabularies/jtd/type.ts +0 -75
  694. package/node_modules/ajv/lib/vocabularies/jtd/union.ts +0 -12
  695. package/node_modules/ajv/lib/vocabularies/jtd/values.ts +0 -58
  696. package/node_modules/ajv/lib/vocabularies/metadata.ts +0 -17
  697. package/node_modules/ajv/lib/vocabularies/next.ts +0 -8
  698. package/node_modules/ajv/lib/vocabularies/unevaluated/index.ts +0 -7
  699. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedItems.ts +0 -47
  700. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedProperties.ts +0 -85
  701. package/node_modules/ajv/lib/vocabularies/validation/const.ts +0 -28
  702. package/node_modules/ajv/lib/vocabularies/validation/dependentRequired.ts +0 -23
  703. package/node_modules/ajv/lib/vocabularies/validation/enum.ts +0 -54
  704. package/node_modules/ajv/lib/vocabularies/validation/index.ts +0 -49
  705. package/node_modules/ajv/lib/vocabularies/validation/limitContains.ts +0 -16
  706. package/node_modules/ajv/lib/vocabularies/validation/limitItems.ts +0 -26
  707. package/node_modules/ajv/lib/vocabularies/validation/limitLength.ts +0 -30
  708. package/node_modules/ajv/lib/vocabularies/validation/limitNumber.ts +0 -42
  709. package/node_modules/ajv/lib/vocabularies/validation/limitProperties.ts +0 -26
  710. package/node_modules/ajv/lib/vocabularies/validation/multipleOf.ts +0 -34
  711. package/node_modules/ajv/lib/vocabularies/validation/pattern.ts +0 -28
  712. package/node_modules/ajv/lib/vocabularies/validation/required.ts +0 -98
  713. package/node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts +0 -79
  714. package/node_modules/ajv/package.json +0 -126
  715. package/node_modules/ansi-regex/index.d.ts +0 -37
  716. package/node_modules/ansi-regex/index.js +0 -10
  717. package/node_modules/ansi-regex/license +0 -9
  718. package/node_modules/ansi-regex/package.json +0 -55
  719. package/node_modules/ansi-regex/readme.md +0 -78
  720. package/node_modules/ansi-styles/index.d.ts +0 -345
  721. package/node_modules/ansi-styles/index.js +0 -163
  722. package/node_modules/ansi-styles/license +0 -9
  723. package/node_modules/ansi-styles/package.json +0 -56
  724. package/node_modules/ansi-styles/readme.md +0 -152
  725. package/node_modules/astral-regex/index.d.ts +0 -28
  726. package/node_modules/astral-regex/index.js +0 -6
  727. package/node_modules/astral-regex/license +0 -9
  728. package/node_modules/astral-regex/package.json +0 -33
  729. package/node_modules/astral-regex/readme.md +0 -46
  730. package/node_modules/at-least-node/LICENSE +0 -6
  731. package/node_modules/at-least-node/README.md +0 -25
  732. package/node_modules/at-least-node/index.js +0 -5
  733. package/node_modules/at-least-node/package.json +0 -32
  734. package/node_modules/chalk/index.d.ts +0 -415
  735. package/node_modules/chalk/license +0 -9
  736. package/node_modules/chalk/package.json +0 -68
  737. package/node_modules/chalk/readme.md +0 -341
  738. package/node_modules/chalk/source/index.js +0 -229
  739. package/node_modules/chalk/source/templates.js +0 -134
  740. package/node_modules/chalk/source/util.js +0 -39
  741. package/node_modules/color-convert/CHANGELOG.md +0 -54
  742. package/node_modules/color-convert/LICENSE +0 -21
  743. package/node_modules/color-convert/README.md +0 -68
  744. package/node_modules/color-convert/conversions.js +0 -839
  745. package/node_modules/color-convert/index.js +0 -81
  746. package/node_modules/color-convert/package.json +0 -48
  747. package/node_modules/color-convert/route.js +0 -97
  748. package/node_modules/color-name/LICENSE +0 -8
  749. package/node_modules/color-name/README.md +0 -11
  750. package/node_modules/color-name/index.js +0 -152
  751. package/node_modules/color-name/package.json +0 -28
  752. package/node_modules/diff/CONTRIBUTING.md +0 -36
  753. package/node_modules/diff/LICENSE +0 -29
  754. package/node_modules/diff/README.md +0 -339
  755. package/node_modules/diff/dist/diff.js +0 -1730
  756. package/node_modules/diff/dist/diff.min.js +0 -1
  757. package/node_modules/diff/lib/convert/dmp.js +0 -32
  758. package/node_modules/diff/lib/convert/xml.js +0 -42
  759. package/node_modules/diff/lib/diff/array.js +0 -45
  760. package/node_modules/diff/lib/diff/base.js +0 -358
  761. package/node_modules/diff/lib/diff/character.js +0 -37
  762. package/node_modules/diff/lib/diff/css.js +0 -41
  763. package/node_modules/diff/lib/diff/json.js +0 -163
  764. package/node_modules/diff/lib/diff/line.js +0 -94
  765. package/node_modules/diff/lib/diff/sentence.js +0 -41
  766. package/node_modules/diff/lib/diff/word.js +0 -108
  767. package/node_modules/diff/lib/index.es6.js +0 -1699
  768. package/node_modules/diff/lib/index.js +0 -234
  769. package/node_modules/diff/lib/index.mjs +0 -1699
  770. package/node_modules/diff/lib/patch/apply.js +0 -238
  771. package/node_modules/diff/lib/patch/create.js +0 -276
  772. package/node_modules/diff/lib/patch/merge.js +0 -613
  773. package/node_modules/diff/lib/patch/parse.js +0 -167
  774. package/node_modules/diff/lib/patch/reverse.js +0 -63
  775. package/node_modules/diff/lib/util/array.js +0 -32
  776. package/node_modules/diff/lib/util/distance-iterator.js +0 -57
  777. package/node_modules/diff/lib/util/params.js +0 -24
  778. package/node_modules/diff/package.json +0 -89
  779. package/node_modules/diff/release-notes.md +0 -317
  780. package/node_modules/diff/runtime.js +0 -3
  781. package/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  782. package/node_modules/emoji-regex/README.md +0 -73
  783. package/node_modules/emoji-regex/es2015/index.js +0 -6
  784. package/node_modules/emoji-regex/es2015/text.js +0 -6
  785. package/node_modules/emoji-regex/index.d.ts +0 -23
  786. package/node_modules/emoji-regex/index.js +0 -6
  787. package/node_modules/emoji-regex/package.json +0 -50
  788. package/node_modules/emoji-regex/text.js +0 -6
  789. package/node_modules/fast-deep-equal/LICENSE +0 -21
  790. package/node_modules/fast-deep-equal/README.md +0 -96
  791. package/node_modules/fast-deep-equal/es6/index.d.ts +0 -2
  792. package/node_modules/fast-deep-equal/es6/index.js +0 -72
  793. package/node_modules/fast-deep-equal/es6/react.d.ts +0 -2
  794. package/node_modules/fast-deep-equal/es6/react.js +0 -79
  795. package/node_modules/fast-deep-equal/index.d.ts +0 -4
  796. package/node_modules/fast-deep-equal/index.js +0 -46
  797. package/node_modules/fast-deep-equal/package.json +0 -61
  798. package/node_modules/fast-deep-equal/react.d.ts +0 -2
  799. package/node_modules/fast-deep-equal/react.js +0 -53
  800. package/node_modules/fast-uri/.gitattributes +0 -2
  801. package/node_modules/fast-uri/.github/.stale.yml +0 -21
  802. package/node_modules/fast-uri/.github/dependabot.yml +0 -13
  803. package/node_modules/fast-uri/.github/tests_checker.yml +0 -8
  804. package/node_modules/fast-uri/.github/workflows/ci.yml +0 -23
  805. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +0 -20
  806. package/node_modules/fast-uri/LICENSE +0 -30
  807. package/node_modules/fast-uri/README.md +0 -125
  808. package/node_modules/fast-uri/benchmark.js +0 -105
  809. package/node_modules/fast-uri/index.js +0 -303
  810. package/node_modules/fast-uri/lib/schemes.js +0 -188
  811. package/node_modules/fast-uri/lib/scopedChars.js +0 -30
  812. package/node_modules/fast-uri/lib/utils.js +0 -242
  813. package/node_modules/fast-uri/package.json +0 -39
  814. package/node_modules/fast-uri/test/.gitkeep +0 -0
  815. package/node_modules/fast-uri/test/ajv.test.js +0 -39
  816. package/node_modules/fast-uri/test/compatibility.test.js +0 -131
  817. package/node_modules/fast-uri/test/equal.test.js +0 -103
  818. package/node_modules/fast-uri/test/parse.test.js +0 -318
  819. package/node_modules/fast-uri/test/resolve.test.js +0 -75
  820. package/node_modules/fast-uri/test/serialize.test.js +0 -143
  821. package/node_modules/fast-uri/test/uri-js.test.js +0 -912
  822. package/node_modules/fast-uri/test/util.test.js +0 -23
  823. package/node_modules/fast-uri/types/index.d.ts +0 -53
  824. package/node_modules/fast-uri/types/index.test-d.ts +0 -17
  825. package/node_modules/graphql-mapping-template/LICENSE +0 -201
  826. package/node_modules/graphql-transformer-common/LICENSE +0 -201
  827. package/node_modules/has-flag/index.d.ts +0 -39
  828. package/node_modules/has-flag/index.js +0 -8
  829. package/node_modules/has-flag/license +0 -9
  830. package/node_modules/has-flag/package.json +0 -46
  831. package/node_modules/has-flag/readme.md +0 -89
  832. package/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  833. package/node_modules/is-fullwidth-code-point/index.js +0 -50
  834. package/node_modules/is-fullwidth-code-point/license +0 -9
  835. package/node_modules/is-fullwidth-code-point/package.json +0 -42
  836. package/node_modules/is-fullwidth-code-point/readme.md +0 -39
  837. package/node_modules/json-schema-traverse/.eslintrc.yml +0 -27
  838. package/node_modules/json-schema-traverse/.github/FUNDING.yml +0 -2
  839. package/node_modules/json-schema-traverse/.github/workflows/build.yml +0 -28
  840. package/node_modules/json-schema-traverse/.github/workflows/publish.yml +0 -27
  841. package/node_modules/json-schema-traverse/LICENSE +0 -21
  842. package/node_modules/json-schema-traverse/README.md +0 -95
  843. package/node_modules/json-schema-traverse/index.d.ts +0 -40
  844. package/node_modules/json-schema-traverse/index.js +0 -93
  845. package/node_modules/json-schema-traverse/package.json +0 -43
  846. package/node_modules/json-schema-traverse/spec/.eslintrc.yml +0 -6
  847. package/node_modules/json-schema-traverse/spec/fixtures/schema.js +0 -125
  848. package/node_modules/json-schema-traverse/spec/index.spec.js +0 -171
  849. package/node_modules/lodash.truncate/LICENSE +0 -47
  850. package/node_modules/lodash.truncate/README.md +0 -18
  851. package/node_modules/lodash.truncate/index.js +0 -632
  852. package/node_modules/lodash.truncate/package.json +0 -17
  853. package/node_modules/require-from-string/index.js +0 -34
  854. package/node_modules/require-from-string/license +0 -21
  855. package/node_modules/require-from-string/package.json +0 -28
  856. package/node_modules/require-from-string/readme.md +0 -56
  857. package/node_modules/slice-ansi/index.js +0 -103
  858. package/node_modules/slice-ansi/license +0 -10
  859. package/node_modules/slice-ansi/package.json +0 -52
  860. package/node_modules/slice-ansi/readme.md +0 -66
  861. package/node_modules/string-width/index.d.ts +0 -29
  862. package/node_modules/string-width/index.js +0 -47
  863. package/node_modules/string-width/license +0 -9
  864. package/node_modules/string-width/package.json +0 -56
  865. package/node_modules/string-width/readme.md +0 -50
  866. package/node_modules/strip-ansi/index.d.ts +0 -17
  867. package/node_modules/strip-ansi/index.js +0 -4
  868. package/node_modules/strip-ansi/license +0 -9
  869. package/node_modules/strip-ansi/package.json +0 -54
  870. package/node_modules/strip-ansi/readme.md +0 -46
  871. package/node_modules/supports-color/browser.js +0 -5
  872. package/node_modules/supports-color/index.js +0 -135
  873. package/node_modules/supports-color/license +0 -9
  874. package/node_modules/supports-color/package.json +0 -53
  875. package/node_modules/supports-color/readme.md +0 -76
  876. package/node_modules/table/LICENSE +0 -24
  877. package/node_modules/table/README.md +0 -837
  878. package/node_modules/table/dist/src/alignSpanningCell.d.ts +0 -7
  879. package/node_modules/table/dist/src/alignSpanningCell.js +0 -48
  880. package/node_modules/table/dist/src/alignSpanningCell.js.map +0 -1
  881. package/node_modules/table/dist/src/alignString.d.ts +0 -6
  882. package/node_modules/table/dist/src/alignString.js +0 -60
  883. package/node_modules/table/dist/src/alignString.js.map +0 -1
  884. package/node_modules/table/dist/src/alignTableData.d.ts +0 -2
  885. package/node_modules/table/dist/src/alignTableData.js +0 -20
  886. package/node_modules/table/dist/src/alignTableData.js.map +0 -1
  887. package/node_modules/table/dist/src/calculateCellHeight.d.ts +0 -4
  888. package/node_modules/table/dist/src/calculateCellHeight.js +0 -12
  889. package/node_modules/table/dist/src/calculateCellHeight.js.map +0 -1
  890. package/node_modules/table/dist/src/calculateMaximumColumnWidths.d.ts +0 -7
  891. package/node_modules/table/dist/src/calculateMaximumColumnWidths.js +0 -36
  892. package/node_modules/table/dist/src/calculateMaximumColumnWidths.js.map +0 -1
  893. package/node_modules/table/dist/src/calculateOutputColumnWidths.d.ts +0 -2
  894. package/node_modules/table/dist/src/calculateOutputColumnWidths.js +0 -10
  895. package/node_modules/table/dist/src/calculateOutputColumnWidths.js.map +0 -1
  896. package/node_modules/table/dist/src/calculateRowHeights.d.ts +0 -5
  897. package/node_modules/table/dist/src/calculateRowHeights.js +0 -42
  898. package/node_modules/table/dist/src/calculateRowHeights.js.map +0 -1
  899. package/node_modules/table/dist/src/calculateSpanningCellWidth.d.ts +0 -3
  900. package/node_modules/table/dist/src/calculateSpanningCellWidth.js +0 -26
  901. package/node_modules/table/dist/src/calculateSpanningCellWidth.js.map +0 -1
  902. package/node_modules/table/dist/src/createStream.d.ts +0 -2
  903. package/node_modules/table/dist/src/createStream.js +0 -74
  904. package/node_modules/table/dist/src/createStream.js.map +0 -1
  905. package/node_modules/table/dist/src/drawBorder.d.ts +0 -34
  906. package/node_modules/table/dist/src/drawBorder.js +0 -202
  907. package/node_modules/table/dist/src/drawBorder.js.map +0 -1
  908. package/node_modules/table/dist/src/drawContent.d.ts +0 -14
  909. package/node_modules/table/dist/src/drawContent.js +0 -51
  910. package/node_modules/table/dist/src/drawContent.js.map +0 -1
  911. package/node_modules/table/dist/src/drawRow.d.ts +0 -10
  912. package/node_modules/table/dist/src/drawRow.js +0 -25
  913. package/node_modules/table/dist/src/drawRow.js.map +0 -1
  914. package/node_modules/table/dist/src/drawTable.d.ts +0 -2
  915. package/node_modules/table/dist/src/drawTable.js +0 -31
  916. package/node_modules/table/dist/src/drawTable.js.map +0 -1
  917. package/node_modules/table/dist/src/generated/validators.d.ts +0 -13
  918. package/node_modules/table/dist/src/generated/validators.js +0 -2694
  919. package/node_modules/table/dist/src/generated/validators.js.map +0 -1
  920. package/node_modules/table/dist/src/getBorderCharacters.d.ts +0 -2
  921. package/node_modules/table/dist/src/getBorderCharacters.js +0 -105
  922. package/node_modules/table/dist/src/getBorderCharacters.js.map +0 -1
  923. package/node_modules/table/dist/src/index.d.ts +0 -5
  924. package/node_modules/table/dist/src/index.js +0 -21
  925. package/node_modules/table/dist/src/index.js.map +0 -1
  926. package/node_modules/table/dist/src/injectHeaderConfig.d.ts +0 -3
  927. package/node_modules/table/dist/src/injectHeaderConfig.js +0 -29
  928. package/node_modules/table/dist/src/injectHeaderConfig.js.map +0 -1
  929. package/node_modules/table/dist/src/makeRangeConfig.d.ts +0 -3
  930. package/node_modules/table/dist/src/makeRangeConfig.js +0 -18
  931. package/node_modules/table/dist/src/makeRangeConfig.js.map +0 -1
  932. package/node_modules/table/dist/src/makeStreamConfig.d.ts +0 -7
  933. package/node_modules/table/dist/src/makeStreamConfig.js +0 -43
  934. package/node_modules/table/dist/src/makeStreamConfig.js.map +0 -1
  935. package/node_modules/table/dist/src/makeTableConfig.d.ts +0 -7
  936. package/node_modules/table/dist/src/makeTableConfig.js +0 -62
  937. package/node_modules/table/dist/src/makeTableConfig.js.map +0 -1
  938. package/node_modules/table/dist/src/mapDataUsingRowHeights.d.ts +0 -4
  939. package/node_modules/table/dist/src/mapDataUsingRowHeights.js +0 -52
  940. package/node_modules/table/dist/src/mapDataUsingRowHeights.js.map +0 -1
  941. package/node_modules/table/dist/src/padTableData.d.ts +0 -3
  942. package/node_modules/table/dist/src/padTableData.js +0 -23
  943. package/node_modules/table/dist/src/padTableData.js.map +0 -1
  944. package/node_modules/table/dist/src/schemas/config.json +0 -95
  945. package/node_modules/table/dist/src/schemas/shared.json +0 -139
  946. package/node_modules/table/dist/src/schemas/streamConfig.json +0 -25
  947. package/node_modules/table/dist/src/spanningCellManager.d.ts +0 -23
  948. package/node_modules/table/dist/src/spanningCellManager.js +0 -95
  949. package/node_modules/table/dist/src/spanningCellManager.js.map +0 -1
  950. package/node_modules/table/dist/src/stringifyTableData.d.ts +0 -2
  951. package/node_modules/table/dist/src/stringifyTableData.js +0 -13
  952. package/node_modules/table/dist/src/stringifyTableData.js.map +0 -1
  953. package/node_modules/table/dist/src/table.d.ts +0 -2
  954. package/node_modules/table/dist/src/table.js +0 -32
  955. package/node_modules/table/dist/src/table.js.map +0 -1
  956. package/node_modules/table/dist/src/truncateTableData.d.ts +0 -6
  957. package/node_modules/table/dist/src/truncateTableData.js +0 -24
  958. package/node_modules/table/dist/src/truncateTableData.js.map +0 -1
  959. package/node_modules/table/dist/src/types/api.d.ts +0 -130
  960. package/node_modules/table/dist/src/types/api.js +0 -3
  961. package/node_modules/table/dist/src/types/api.js.map +0 -1
  962. package/node_modules/table/dist/src/types/internal.d.ts +0 -1
  963. package/node_modules/table/dist/src/types/internal.js +0 -3
  964. package/node_modules/table/dist/src/types/internal.js.map +0 -1
  965. package/node_modules/table/dist/src/utils.d.ts +0 -9
  966. package/node_modules/table/dist/src/utils.js +0 -134
  967. package/node_modules/table/dist/src/utils.js.map +0 -1
  968. package/node_modules/table/dist/src/validateConfig.d.ts +0 -2
  969. package/node_modules/table/dist/src/validateConfig.js +0 -27
  970. package/node_modules/table/dist/src/validateConfig.js.map +0 -1
  971. package/node_modules/table/dist/src/validateSpanningCellConfig.d.ts +0 -3
  972. package/node_modules/table/dist/src/validateSpanningCellConfig.js +0 -46
  973. package/node_modules/table/dist/src/validateSpanningCellConfig.js.map +0 -1
  974. package/node_modules/table/dist/src/validateTableData.d.ts +0 -1
  975. package/node_modules/table/dist/src/validateTableData.js +0 -32
  976. package/node_modules/table/dist/src/validateTableData.js.map +0 -1
  977. package/node_modules/table/dist/src/wrapCell.d.ts +0 -8
  978. package/node_modules/table/dist/src/wrapCell.js +0 -33
  979. package/node_modules/table/dist/src/wrapCell.js.map +0 -1
  980. package/node_modules/table/dist/src/wrapString.d.ts +0 -9
  981. package/node_modules/table/dist/src/wrapString.js +0 -27
  982. package/node_modules/table/dist/src/wrapString.js.map +0 -1
  983. package/node_modules/table/dist/src/wrapWord.d.ts +0 -1
  984. package/node_modules/table/dist/src/wrapWord.js +0 -42
  985. package/node_modules/table/dist/src/wrapWord.js.map +0 -1
  986. package/node_modules/table/package.json +0 -77
@@ -1,613 +0,0 @@
1
- /*istanbul ignore start*/
2
- "use strict";
3
-
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.calcLineCount = calcLineCount;
8
- exports.merge = merge;
9
-
10
- /*istanbul ignore end*/
11
- var
12
- /*istanbul ignore start*/
13
- _create = require("./create")
14
- /*istanbul ignore end*/
15
- ;
16
-
17
- var
18
- /*istanbul ignore start*/
19
- _parse = require("./parse")
20
- /*istanbul ignore end*/
21
- ;
22
-
23
- var
24
- /*istanbul ignore start*/
25
- _array = require("../util/array")
26
- /*istanbul ignore end*/
27
- ;
28
-
29
- /*istanbul ignore start*/ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
30
-
31
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
32
-
33
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
34
-
35
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
36
-
37
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
38
-
39
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
40
-
41
- /*istanbul ignore end*/
42
- function calcLineCount(hunk) {
43
- /*istanbul ignore start*/
44
- var _calcOldNewLineCount =
45
- /*istanbul ignore end*/
46
- calcOldNewLineCount(hunk.lines),
47
- oldLines = _calcOldNewLineCount.oldLines,
48
- newLines = _calcOldNewLineCount.newLines;
49
-
50
- if (oldLines !== undefined) {
51
- hunk.oldLines = oldLines;
52
- } else {
53
- delete hunk.oldLines;
54
- }
55
-
56
- if (newLines !== undefined) {
57
- hunk.newLines = newLines;
58
- } else {
59
- delete hunk.newLines;
60
- }
61
- }
62
-
63
- function merge(mine, theirs, base) {
64
- mine = loadPatch(mine, base);
65
- theirs = loadPatch(theirs, base);
66
- var ret = {}; // For index we just let it pass through as it doesn't have any necessary meaning.
67
- // Leaving sanity checks on this to the API consumer that may know more about the
68
- // meaning in their own context.
69
-
70
- if (mine.index || theirs.index) {
71
- ret.index = mine.index || theirs.index;
72
- }
73
-
74
- if (mine.newFileName || theirs.newFileName) {
75
- if (!fileNameChanged(mine)) {
76
- // No header or no change in ours, use theirs (and ours if theirs does not exist)
77
- ret.oldFileName = theirs.oldFileName || mine.oldFileName;
78
- ret.newFileName = theirs.newFileName || mine.newFileName;
79
- ret.oldHeader = theirs.oldHeader || mine.oldHeader;
80
- ret.newHeader = theirs.newHeader || mine.newHeader;
81
- } else if (!fileNameChanged(theirs)) {
82
- // No header or no change in theirs, use ours
83
- ret.oldFileName = mine.oldFileName;
84
- ret.newFileName = mine.newFileName;
85
- ret.oldHeader = mine.oldHeader;
86
- ret.newHeader = mine.newHeader;
87
- } else {
88
- // Both changed... figure it out
89
- ret.oldFileName = selectField(ret, mine.oldFileName, theirs.oldFileName);
90
- ret.newFileName = selectField(ret, mine.newFileName, theirs.newFileName);
91
- ret.oldHeader = selectField(ret, mine.oldHeader, theirs.oldHeader);
92
- ret.newHeader = selectField(ret, mine.newHeader, theirs.newHeader);
93
- }
94
- }
95
-
96
- ret.hunks = [];
97
- var mineIndex = 0,
98
- theirsIndex = 0,
99
- mineOffset = 0,
100
- theirsOffset = 0;
101
-
102
- while (mineIndex < mine.hunks.length || theirsIndex < theirs.hunks.length) {
103
- var mineCurrent = mine.hunks[mineIndex] || {
104
- oldStart: Infinity
105
- },
106
- theirsCurrent = theirs.hunks[theirsIndex] || {
107
- oldStart: Infinity
108
- };
109
-
110
- if (hunkBefore(mineCurrent, theirsCurrent)) {
111
- // This patch does not overlap with any of the others, yay.
112
- ret.hunks.push(cloneHunk(mineCurrent, mineOffset));
113
- mineIndex++;
114
- theirsOffset += mineCurrent.newLines - mineCurrent.oldLines;
115
- } else if (hunkBefore(theirsCurrent, mineCurrent)) {
116
- // This patch does not overlap with any of the others, yay.
117
- ret.hunks.push(cloneHunk(theirsCurrent, theirsOffset));
118
- theirsIndex++;
119
- mineOffset += theirsCurrent.newLines - theirsCurrent.oldLines;
120
- } else {
121
- // Overlap, merge as best we can
122
- var mergedHunk = {
123
- oldStart: Math.min(mineCurrent.oldStart, theirsCurrent.oldStart),
124
- oldLines: 0,
125
- newStart: Math.min(mineCurrent.newStart + mineOffset, theirsCurrent.oldStart + theirsOffset),
126
- newLines: 0,
127
- lines: []
128
- };
129
- mergeLines(mergedHunk, mineCurrent.oldStart, mineCurrent.lines, theirsCurrent.oldStart, theirsCurrent.lines);
130
- theirsIndex++;
131
- mineIndex++;
132
- ret.hunks.push(mergedHunk);
133
- }
134
- }
135
-
136
- return ret;
137
- }
138
-
139
- function loadPatch(param, base) {
140
- if (typeof param === 'string') {
141
- if (/^@@/m.test(param) || /^Index:/m.test(param)) {
142
- return (
143
- /*istanbul ignore start*/
144
- (0,
145
- /*istanbul ignore end*/
146
-
147
- /*istanbul ignore start*/
148
- _parse
149
- /*istanbul ignore end*/
150
- .
151
- /*istanbul ignore start*/
152
- parsePatch)
153
- /*istanbul ignore end*/
154
- (param)[0]
155
- );
156
- }
157
-
158
- if (!base) {
159
- throw new Error('Must provide a base reference or pass in a patch');
160
- }
161
-
162
- return (
163
- /*istanbul ignore start*/
164
- (0,
165
- /*istanbul ignore end*/
166
-
167
- /*istanbul ignore start*/
168
- _create
169
- /*istanbul ignore end*/
170
- .
171
- /*istanbul ignore start*/
172
- structuredPatch)
173
- /*istanbul ignore end*/
174
- (undefined, undefined, base, param)
175
- );
176
- }
177
-
178
- return param;
179
- }
180
-
181
- function fileNameChanged(patch) {
182
- return patch.newFileName && patch.newFileName !== patch.oldFileName;
183
- }
184
-
185
- function selectField(index, mine, theirs) {
186
- if (mine === theirs) {
187
- return mine;
188
- } else {
189
- index.conflict = true;
190
- return {
191
- mine: mine,
192
- theirs: theirs
193
- };
194
- }
195
- }
196
-
197
- function hunkBefore(test, check) {
198
- return test.oldStart < check.oldStart && test.oldStart + test.oldLines < check.oldStart;
199
- }
200
-
201
- function cloneHunk(hunk, offset) {
202
- return {
203
- oldStart: hunk.oldStart,
204
- oldLines: hunk.oldLines,
205
- newStart: hunk.newStart + offset,
206
- newLines: hunk.newLines,
207
- lines: hunk.lines
208
- };
209
- }
210
-
211
- function mergeLines(hunk, mineOffset, mineLines, theirOffset, theirLines) {
212
- // This will generally result in a conflicted hunk, but there are cases where the context
213
- // is the only overlap where we can successfully merge the content here.
214
- var mine = {
215
- offset: mineOffset,
216
- lines: mineLines,
217
- index: 0
218
- },
219
- their = {
220
- offset: theirOffset,
221
- lines: theirLines,
222
- index: 0
223
- }; // Handle any leading content
224
-
225
- insertLeading(hunk, mine, their);
226
- insertLeading(hunk, their, mine); // Now in the overlap content. Scan through and select the best changes from each.
227
-
228
- while (mine.index < mine.lines.length && their.index < their.lines.length) {
229
- var mineCurrent = mine.lines[mine.index],
230
- theirCurrent = their.lines[their.index];
231
-
232
- if ((mineCurrent[0] === '-' || mineCurrent[0] === '+') && (theirCurrent[0] === '-' || theirCurrent[0] === '+')) {
233
- // Both modified ...
234
- mutualChange(hunk, mine, their);
235
- } else if (mineCurrent[0] === '+' && theirCurrent[0] === ' ') {
236
- /*istanbul ignore start*/
237
- var _hunk$lines;
238
-
239
- /*istanbul ignore end*/
240
- // Mine inserted
241
-
242
- /*istanbul ignore start*/
243
-
244
- /*istanbul ignore end*/
245
-
246
- /*istanbul ignore start*/
247
- (_hunk$lines =
248
- /*istanbul ignore end*/
249
- hunk.lines).push.apply(
250
- /*istanbul ignore start*/
251
- _hunk$lines
252
- /*istanbul ignore end*/
253
- ,
254
- /*istanbul ignore start*/
255
- _toConsumableArray(
256
- /*istanbul ignore end*/
257
- collectChange(mine)));
258
- } else if (theirCurrent[0] === '+' && mineCurrent[0] === ' ') {
259
- /*istanbul ignore start*/
260
- var _hunk$lines2;
261
-
262
- /*istanbul ignore end*/
263
- // Theirs inserted
264
-
265
- /*istanbul ignore start*/
266
-
267
- /*istanbul ignore end*/
268
-
269
- /*istanbul ignore start*/
270
- (_hunk$lines2 =
271
- /*istanbul ignore end*/
272
- hunk.lines).push.apply(
273
- /*istanbul ignore start*/
274
- _hunk$lines2
275
- /*istanbul ignore end*/
276
- ,
277
- /*istanbul ignore start*/
278
- _toConsumableArray(
279
- /*istanbul ignore end*/
280
- collectChange(their)));
281
- } else if (mineCurrent[0] === '-' && theirCurrent[0] === ' ') {
282
- // Mine removed or edited
283
- removal(hunk, mine, their);
284
- } else if (theirCurrent[0] === '-' && mineCurrent[0] === ' ') {
285
- // Their removed or edited
286
- removal(hunk, their, mine, true);
287
- } else if (mineCurrent === theirCurrent) {
288
- // Context identity
289
- hunk.lines.push(mineCurrent);
290
- mine.index++;
291
- their.index++;
292
- } else {
293
- // Context mismatch
294
- conflict(hunk, collectChange(mine), collectChange(their));
295
- }
296
- } // Now push anything that may be remaining
297
-
298
-
299
- insertTrailing(hunk, mine);
300
- insertTrailing(hunk, their);
301
- calcLineCount(hunk);
302
- }
303
-
304
- function mutualChange(hunk, mine, their) {
305
- var myChanges = collectChange(mine),
306
- theirChanges = collectChange(their);
307
-
308
- if (allRemoves(myChanges) && allRemoves(theirChanges)) {
309
- // Special case for remove changes that are supersets of one another
310
- if (
311
- /*istanbul ignore start*/
312
- (0,
313
- /*istanbul ignore end*/
314
-
315
- /*istanbul ignore start*/
316
- _array
317
- /*istanbul ignore end*/
318
- .
319
- /*istanbul ignore start*/
320
- arrayStartsWith)
321
- /*istanbul ignore end*/
322
- (myChanges, theirChanges) && skipRemoveSuperset(their, myChanges, myChanges.length - theirChanges.length)) {
323
- /*istanbul ignore start*/
324
- var _hunk$lines3;
325
-
326
- /*istanbul ignore end*/
327
-
328
- /*istanbul ignore start*/
329
-
330
- /*istanbul ignore end*/
331
-
332
- /*istanbul ignore start*/
333
- (_hunk$lines3 =
334
- /*istanbul ignore end*/
335
- hunk.lines).push.apply(
336
- /*istanbul ignore start*/
337
- _hunk$lines3
338
- /*istanbul ignore end*/
339
- ,
340
- /*istanbul ignore start*/
341
- _toConsumableArray(
342
- /*istanbul ignore end*/
343
- myChanges));
344
-
345
- return;
346
- } else if (
347
- /*istanbul ignore start*/
348
- (0,
349
- /*istanbul ignore end*/
350
-
351
- /*istanbul ignore start*/
352
- _array
353
- /*istanbul ignore end*/
354
- .
355
- /*istanbul ignore start*/
356
- arrayStartsWith)
357
- /*istanbul ignore end*/
358
- (theirChanges, myChanges) && skipRemoveSuperset(mine, theirChanges, theirChanges.length - myChanges.length)) {
359
- /*istanbul ignore start*/
360
- var _hunk$lines4;
361
-
362
- /*istanbul ignore end*/
363
-
364
- /*istanbul ignore start*/
365
-
366
- /*istanbul ignore end*/
367
-
368
- /*istanbul ignore start*/
369
- (_hunk$lines4 =
370
- /*istanbul ignore end*/
371
- hunk.lines).push.apply(
372
- /*istanbul ignore start*/
373
- _hunk$lines4
374
- /*istanbul ignore end*/
375
- ,
376
- /*istanbul ignore start*/
377
- _toConsumableArray(
378
- /*istanbul ignore end*/
379
- theirChanges));
380
-
381
- return;
382
- }
383
- } else if (
384
- /*istanbul ignore start*/
385
- (0,
386
- /*istanbul ignore end*/
387
-
388
- /*istanbul ignore start*/
389
- _array
390
- /*istanbul ignore end*/
391
- .
392
- /*istanbul ignore start*/
393
- arrayEqual)
394
- /*istanbul ignore end*/
395
- (myChanges, theirChanges)) {
396
- /*istanbul ignore start*/
397
- var _hunk$lines5;
398
-
399
- /*istanbul ignore end*/
400
-
401
- /*istanbul ignore start*/
402
-
403
- /*istanbul ignore end*/
404
-
405
- /*istanbul ignore start*/
406
- (_hunk$lines5 =
407
- /*istanbul ignore end*/
408
- hunk.lines).push.apply(
409
- /*istanbul ignore start*/
410
- _hunk$lines5
411
- /*istanbul ignore end*/
412
- ,
413
- /*istanbul ignore start*/
414
- _toConsumableArray(
415
- /*istanbul ignore end*/
416
- myChanges));
417
-
418
- return;
419
- }
420
-
421
- conflict(hunk, myChanges, theirChanges);
422
- }
423
-
424
- function removal(hunk, mine, their, swap) {
425
- var myChanges = collectChange(mine),
426
- theirChanges = collectContext(their, myChanges);
427
-
428
- if (theirChanges.merged) {
429
- /*istanbul ignore start*/
430
- var _hunk$lines6;
431
-
432
- /*istanbul ignore end*/
433
-
434
- /*istanbul ignore start*/
435
-
436
- /*istanbul ignore end*/
437
-
438
- /*istanbul ignore start*/
439
- (_hunk$lines6 =
440
- /*istanbul ignore end*/
441
- hunk.lines).push.apply(
442
- /*istanbul ignore start*/
443
- _hunk$lines6
444
- /*istanbul ignore end*/
445
- ,
446
- /*istanbul ignore start*/
447
- _toConsumableArray(
448
- /*istanbul ignore end*/
449
- theirChanges.merged));
450
- } else {
451
- conflict(hunk, swap ? theirChanges : myChanges, swap ? myChanges : theirChanges);
452
- }
453
- }
454
-
455
- function conflict(hunk, mine, their) {
456
- hunk.conflict = true;
457
- hunk.lines.push({
458
- conflict: true,
459
- mine: mine,
460
- theirs: their
461
- });
462
- }
463
-
464
- function insertLeading(hunk, insert, their) {
465
- while (insert.offset < their.offset && insert.index < insert.lines.length) {
466
- var line = insert.lines[insert.index++];
467
- hunk.lines.push(line);
468
- insert.offset++;
469
- }
470
- }
471
-
472
- function insertTrailing(hunk, insert) {
473
- while (insert.index < insert.lines.length) {
474
- var line = insert.lines[insert.index++];
475
- hunk.lines.push(line);
476
- }
477
- }
478
-
479
- function collectChange(state) {
480
- var ret = [],
481
- operation = state.lines[state.index][0];
482
-
483
- while (state.index < state.lines.length) {
484
- var line = state.lines[state.index]; // Group additions that are immediately after subtractions and treat them as one "atomic" modify change.
485
-
486
- if (operation === '-' && line[0] === '+') {
487
- operation = '+';
488
- }
489
-
490
- if (operation === line[0]) {
491
- ret.push(line);
492
- state.index++;
493
- } else {
494
- break;
495
- }
496
- }
497
-
498
- return ret;
499
- }
500
-
501
- function collectContext(state, matchChanges) {
502
- var changes = [],
503
- merged = [],
504
- matchIndex = 0,
505
- contextChanges = false,
506
- conflicted = false;
507
-
508
- while (matchIndex < matchChanges.length && state.index < state.lines.length) {
509
- var change = state.lines[state.index],
510
- match = matchChanges[matchIndex]; // Once we've hit our add, then we are done
511
-
512
- if (match[0] === '+') {
513
- break;
514
- }
515
-
516
- contextChanges = contextChanges || change[0] !== ' ';
517
- merged.push(match);
518
- matchIndex++; // Consume any additions in the other block as a conflict to attempt
519
- // to pull in the remaining context after this
520
-
521
- if (change[0] === '+') {
522
- conflicted = true;
523
-
524
- while (change[0] === '+') {
525
- changes.push(change);
526
- change = state.lines[++state.index];
527
- }
528
- }
529
-
530
- if (match.substr(1) === change.substr(1)) {
531
- changes.push(change);
532
- state.index++;
533
- } else {
534
- conflicted = true;
535
- }
536
- }
537
-
538
- if ((matchChanges[matchIndex] || '')[0] === '+' && contextChanges) {
539
- conflicted = true;
540
- }
541
-
542
- if (conflicted) {
543
- return changes;
544
- }
545
-
546
- while (matchIndex < matchChanges.length) {
547
- merged.push(matchChanges[matchIndex++]);
548
- }
549
-
550
- return {
551
- merged: merged,
552
- changes: changes
553
- };
554
- }
555
-
556
- function allRemoves(changes) {
557
- return changes.reduce(function (prev, change) {
558
- return prev && change[0] === '-';
559
- }, true);
560
- }
561
-
562
- function skipRemoveSuperset(state, removeChanges, delta) {
563
- for (var i = 0; i < delta; i++) {
564
- var changeContent = removeChanges[removeChanges.length - delta + i].substr(1);
565
-
566
- if (state.lines[state.index + i] !== ' ' + changeContent) {
567
- return false;
568
- }
569
- }
570
-
571
- state.index += delta;
572
- return true;
573
- }
574
-
575
- function calcOldNewLineCount(lines) {
576
- var oldLines = 0;
577
- var newLines = 0;
578
- lines.forEach(function (line) {
579
- if (typeof line !== 'string') {
580
- var myCount = calcOldNewLineCount(line.mine);
581
- var theirCount = calcOldNewLineCount(line.theirs);
582
-
583
- if (oldLines !== undefined) {
584
- if (myCount.oldLines === theirCount.oldLines) {
585
- oldLines += myCount.oldLines;
586
- } else {
587
- oldLines = undefined;
588
- }
589
- }
590
-
591
- if (newLines !== undefined) {
592
- if (myCount.newLines === theirCount.newLines) {
593
- newLines += myCount.newLines;
594
- } else {
595
- newLines = undefined;
596
- }
597
- }
598
- } else {
599
- if (newLines !== undefined && (line[0] === '+' || line[0] === ' ')) {
600
- newLines++;
601
- }
602
-
603
- if (oldLines !== undefined && (line[0] === '-' || line[0] === ' ')) {
604
- oldLines++;
605
- }
606
- }
607
- });
608
- return {
609
- oldLines: oldLines,
610
- newLines: newLines
611
- };
612
- }
613
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYXRjaC9tZXJnZS5qcyJdLCJuYW1lcyI6WyJjYWxjTGluZUNvdW50IiwiaHVuayIsImNhbGNPbGROZXdMaW5lQ291bnQiLCJsaW5lcyIsIm9sZExpbmVzIiwibmV3TGluZXMiLCJ1bmRlZmluZWQiLCJtZXJnZSIsIm1pbmUiLCJ0aGVpcnMiLCJiYXNlIiwibG9hZFBhdGNoIiwicmV0IiwiaW5kZXgiLCJuZXdGaWxlTmFtZSIsImZpbGVOYW1lQ2hhbmdlZCIsIm9sZEZpbGVOYW1lIiwib2xkSGVhZGVyIiwibmV3SGVhZGVyIiwic2VsZWN0RmllbGQiLCJodW5rcyIsIm1pbmVJbmRleCIsInRoZWlyc0luZGV4IiwibWluZU9mZnNldCIsInRoZWlyc09mZnNldCIsImxlbmd0aCIsIm1pbmVDdXJyZW50Iiwib2xkU3RhcnQiLCJJbmZpbml0eSIsInRoZWlyc0N1cnJlbnQiLCJodW5rQmVmb3JlIiwicHVzaCIsImNsb25lSHVuayIsIm1lcmdlZEh1bmsiLCJNYXRoIiwibWluIiwibmV3U3RhcnQiLCJtZXJnZUxpbmVzIiwicGFyYW0iLCJ0ZXN0IiwicGFyc2VQYXRjaCIsIkVycm9yIiwic3RydWN0dXJlZFBhdGNoIiwicGF0Y2giLCJjb25mbGljdCIsImNoZWNrIiwib2Zmc2V0IiwibWluZUxpbmVzIiwidGhlaXJPZmZzZXQiLCJ0aGVpckxpbmVzIiwidGhlaXIiLCJpbnNlcnRMZWFkaW5nIiwidGhlaXJDdXJyZW50IiwibXV0dWFsQ2hhbmdlIiwiY29sbGVjdENoYW5nZSIsInJlbW92YWwiLCJpbnNlcnRUcmFpbGluZyIsIm15Q2hhbmdlcyIsInRoZWlyQ2hhbmdlcyIsImFsbFJlbW92ZXMiLCJhcnJheVN0YXJ0c1dpdGgiLCJza2lwUmVtb3ZlU3VwZXJzZXQiLCJhcnJheUVxdWFsIiwic3dhcCIsImNvbGxlY3RDb250ZXh0IiwibWVyZ2VkIiwiaW5zZXJ0IiwibGluZSIsInN0YXRlIiwib3BlcmF0aW9uIiwibWF0Y2hDaGFuZ2VzIiwiY2hhbmdlcyIsIm1hdGNoSW5kZXgiLCJjb250ZXh0Q2hhbmdlcyIsImNvbmZsaWN0ZWQiLCJjaGFuZ2UiLCJtYXRjaCIsInN1YnN0ciIsInJlZHVjZSIsInByZXYiLCJyZW1vdmVDaGFuZ2VzIiwiZGVsdGEiLCJpIiwiY2hhbmdlQ29udGVudCIsImZvckVhY2giLCJteUNvdW50IiwidGhlaXJDb3VudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFFQTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7QUFFTyxTQUFTQSxhQUFULENBQXVCQyxJQUF2QixFQUE2QjtBQUFBO0FBQUE7QUFBQTtBQUNMQyxFQUFBQSxtQkFBbUIsQ0FBQ0QsSUFBSSxDQUFDRSxLQUFOLENBRGQ7QUFBQSxNQUMzQkMsUUFEMkIsd0JBQzNCQSxRQUQyQjtBQUFBLE1BQ2pCQyxRQURpQix3QkFDakJBLFFBRGlCOztBQUdsQyxNQUFJRCxRQUFRLEtBQUtFLFNBQWpCLEVBQTRCO0FBQzFCTCxJQUFBQSxJQUFJLENBQUNHLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0QsR0FGRCxNQUVPO0FBQ0wsV0FBT0gsSUFBSSxDQUFDRyxRQUFaO0FBQ0Q7O0FBRUQsTUFBSUMsUUFBUSxLQUFLQyxTQUFqQixFQUE0QjtBQUMxQkwsSUFBQUEsSUFBSSxDQUFDSSxRQUFMLEdBQWdCQSxRQUFoQjtBQUNELEdBRkQsTUFFTztBQUNMLFdBQU9KLElBQUksQ0FBQ0ksUUFBWjtBQUNEO0FBQ0Y7O0FBRU0sU0FBU0UsS0FBVCxDQUFlQyxJQUFmLEVBQXFCQyxNQUFyQixFQUE2QkMsSUFBN0IsRUFBbUM7QUFDeENGLEVBQUFBLElBQUksR0FBR0csU0FBUyxDQUFDSCxJQUFELEVBQU9FLElBQVAsQ0FBaEI7QUFDQUQsRUFBQUEsTUFBTSxHQUFHRSxTQUFTLENBQUNGLE1BQUQsRUFBU0MsSUFBVCxDQUFsQjtBQUVBLE1BQUlFLEdBQUcsR0FBRyxFQUFWLENBSndDLENBTXhDO0FBQ0E7QUFDQTs7QUFDQSxNQUFJSixJQUFJLENBQUNLLEtBQUwsSUFBY0osTUFBTSxDQUFDSSxLQUF6QixFQUFnQztBQUM5QkQsSUFBQUEsR0FBRyxDQUFDQyxLQUFKLEdBQVlMLElBQUksQ0FBQ0ssS0FBTCxJQUFjSixNQUFNLENBQUNJLEtBQWpDO0FBQ0Q7O0FBRUQsTUFBSUwsSUFBSSxDQUFDTSxXQUFMLElBQW9CTCxNQUFNLENBQUNLLFdBQS9CLEVBQTRDO0FBQzFDLFFBQUksQ0FBQ0MsZUFBZSxDQUFDUCxJQUFELENBQXBCLEVBQTRCO0FBQzFCO0FBQ0FJLE1BQUFBLEdBQUcsQ0FBQ0ksV0FBSixHQUFrQlAsTUFBTSxDQUFDTyxXQUFQLElBQXNCUixJQUFJLENBQUNRLFdBQTdDO0FBQ0FKLE1BQUFBLEdBQUcsQ0FBQ0UsV0FBSixHQUFrQkwsTUFBTSxDQUFDSyxXQUFQLElBQXNCTixJQUFJLENBQUNNLFdBQTdDO0FBQ0FGLE1BQUFBLEdBQUcsQ0FBQ0ssU0FBSixHQUFnQlIsTUFBTSxDQUFDUSxTQUFQLElBQW9CVCxJQUFJLENBQUNTLFNBQXpDO0FBQ0FMLE1BQUFBLEdBQUcsQ0FBQ00sU0FBSixHQUFnQlQsTUFBTSxDQUFDUyxTQUFQLElBQW9CVixJQUFJLENBQUNVLFNBQXpDO0FBQ0QsS0FORCxNQU1PLElBQUksQ0FBQ0gsZUFBZSxDQUFDTixNQUFELENBQXBCLEVBQThCO0FBQ25DO0FBQ0FHLE1BQUFBLEdBQUcsQ0FBQ0ksV0FBSixHQUFrQlIsSUFBSSxDQUFDUSxXQUF2QjtBQUNBSixNQUFBQSxHQUFHLENBQUNFLFdBQUosR0FBa0JOLElBQUksQ0FBQ00sV0FBdkI7QUFDQUYsTUFBQUEsR0FBRyxDQUFDSyxTQUFKLEdBQWdCVCxJQUFJLENBQUNTLFNBQXJCO0FBQ0FMLE1BQUFBLEdBQUcsQ0FBQ00sU0FBSixHQUFnQlYsSUFBSSxDQUFDVSxTQUFyQjtBQUNELEtBTk0sTUFNQTtBQUNMO0FBQ0FOLE1BQUFBLEdBQUcsQ0FBQ0ksV0FBSixHQUFrQkcsV0FBVyxDQUFDUCxHQUFELEVBQU1KLElBQUksQ0FBQ1EsV0FBWCxFQUF3QlAsTUFBTSxDQUFDTyxXQUEvQixDQUE3QjtBQUNBSixNQUFBQSxHQUFHLENBQUNFLFdBQUosR0FBa0JLLFdBQVcsQ0FBQ1AsR0FBRCxFQUFNSixJQUFJLENBQUNNLFdBQVgsRUFBd0JMLE1BQU0sQ0FBQ0ssV0FBL0IsQ0FBN0I7QUFDQUYsTUFBQUEsR0FBRyxDQUFDSyxTQUFKLEdBQWdCRSxXQUFXLENBQUNQLEdBQUQsRUFBTUosSUFBSSxDQUFDUyxTQUFYLEVBQXNCUixNQUFNLENBQUNRLFNBQTdCLENBQTNCO0FBQ0FMLE1BQUFBLEdBQUcsQ0FBQ00sU0FBSixHQUFnQkMsV0FBVyxDQUFDUCxHQUFELEVBQU1KLElBQUksQ0FBQ1UsU0FBWCxFQUFzQlQsTUFBTSxDQUFDUyxTQUE3QixDQUEzQjtBQUNEO0FBQ0Y7O0FBRUROLEVBQUFBLEdBQUcsQ0FBQ1EsS0FBSixHQUFZLEVBQVo7QUFFQSxNQUFJQyxTQUFTLEdBQUcsQ0FBaEI7QUFBQSxNQUNJQyxXQUFXLEdBQUcsQ0FEbEI7QUFBQSxNQUVJQyxVQUFVLEdBQUcsQ0FGakI7QUFBQSxNQUdJQyxZQUFZLEdBQUcsQ0FIbkI7O0FBS0EsU0FBT0gsU0FBUyxHQUFHYixJQUFJLENBQUNZLEtBQUwsQ0FBV0ssTUFBdkIsSUFBaUNILFdBQVcsR0FBR2IsTUFBTSxDQUFDVyxLQUFQLENBQWFLLE1BQW5FLEVBQTJFO0FBQ3pFLFFBQUlDLFdBQVcsR0FBR2xCLElBQUksQ0FBQ1ksS0FBTCxDQUFXQyxTQUFYLEtBQXlCO0FBQUNNLE1BQUFBLFFBQVEsRUFBRUM7QUFBWCxLQUEzQztBQUFBLFFBQ0lDLGFBQWEsR0FBR3BCLE1BQU0sQ0FBQ1csS0FBUCxDQUFhRSxXQUFiLEtBQTZCO0FBQUNLLE1BQUFBLFFBQVEsRUFBRUM7QUFBWCxLQURqRDs7QUFHQSxRQUFJRSxVQUFVLENBQUNKLFdBQUQsRUFBY0csYUFBZCxDQUFkLEVBQTRDO0FBQzFDO0FBQ0FqQixNQUFBQSxHQUFHLENBQUNRLEtBQUosQ0FBVVcsSUFBVixDQUFlQyxTQUFTLENBQUNOLFdBQUQsRUFBY0gsVUFBZCxDQUF4QjtBQUNBRixNQUFBQSxTQUFTO0FBQ1RHLE1BQUFBLFlBQVksSUFBSUUsV0FBVyxDQUFDckIsUUFBWixHQUF1QnFCLFdBQVcsQ0FBQ3RCLFFBQW5EO0FBQ0QsS0FMRCxNQUtPLElBQUkwQixVQUFVLENBQUNELGFBQUQsRUFBZ0JILFdBQWhCLENBQWQsRUFBNEM7QUFDakQ7QUFDQWQsTUFBQUEsR0FBRyxDQUFDUSxLQUFKLENBQVVXLElBQVYsQ0FBZUMsU0FBUyxDQUFDSCxhQUFELEVBQWdCTCxZQUFoQixDQUF4QjtBQUNBRixNQUFBQSxXQUFXO0FBQ1hDLE1BQUFBLFVBQVUsSUFBSU0sYUFBYSxDQUFDeEIsUUFBZCxHQUF5QndCLGFBQWEsQ0FBQ3pCLFFBQXJEO0FBQ0QsS0FMTSxNQUtBO0FBQ0w7QUFDQSxVQUFJNkIsVUFBVSxHQUFHO0FBQ2ZOLFFBQUFBLFFBQVEsRUFBRU8sSUFBSSxDQUFDQyxHQUFMLENBQVNULFdBQVcsQ0FBQ0MsUUFBckIsRUFBK0JFLGFBQWEsQ0FBQ0YsUUFBN0MsQ0FESztBQUVmdkIsUUFBQUEsUUFBUSxFQUFFLENBRks7QUFHZmdDLFFBQUFBLFFBQVEsRUFBRUYsSUFBSSxDQUFDQyxHQUFMLENBQVNULFdBQVcsQ0FBQ1UsUUFBWixHQUF1QmIsVUFBaEMsRUFBNENNLGFBQWEsQ0FBQ0YsUUFBZCxHQUF5QkgsWUFBckUsQ0FISztBQUlmbkIsUUFBQUEsUUFBUSxFQUFFLENBSks7QUFLZkYsUUFBQUEsS0FBSyxFQUFFO0FBTFEsT0FBakI7QUFPQWtDLE1BQUFBLFVBQVUsQ0FBQ0osVUFBRCxFQUFhUCxXQUFXLENBQUNDLFFBQXpCLEVBQW1DRCxXQUFXLENBQUN2QixLQUEvQyxFQUFzRDBCLGFBQWEsQ0FBQ0YsUUFBcEUsRUFBOEVFLGFBQWEsQ0FBQzFCLEtBQTVGLENBQVY7QUFDQW1CLE1BQUFBLFdBQVc7QUFDWEQsTUFBQUEsU0FBUztBQUVUVCxNQUFBQSxHQUFHLENBQUNRLEtBQUosQ0FBVVcsSUFBVixDQUFlRSxVQUFmO0FBQ0Q7QUFDRjs7QUFFRCxTQUFPckIsR0FBUDtBQUNEOztBQUVELFNBQVNELFNBQVQsQ0FBbUIyQixLQUFuQixFQUEwQjVCLElBQTFCLEVBQWdDO0FBQzlCLE1BQUksT0FBTzRCLEtBQVAsS0FBaUIsUUFBckIsRUFBK0I7QUFDN0IsUUFBSyxNQUFELENBQVNDLElBQVQsQ0FBY0QsS0FBZCxLQUEwQixVQUFELENBQWFDLElBQWIsQ0FBa0JELEtBQWxCLENBQTdCLEVBQXdEO0FBQ3RELGFBQU87QUFBQTtBQUFBO0FBQUE7O0FBQUFFO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUE7QUFBQSxTQUFXRixLQUFYLEVBQWtCLENBQWxCO0FBQVA7QUFDRDs7QUFFRCxRQUFJLENBQUM1QixJQUFMLEVBQVc7QUFDVCxZQUFNLElBQUkrQixLQUFKLENBQVUsa0RBQVYsQ0FBTjtBQUNEOztBQUNELFdBQU87QUFBQTtBQUFBO0FBQUE7O0FBQUFDO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUE7QUFBQSxPQUFnQnBDLFNBQWhCLEVBQTJCQSxTQUEzQixFQUFzQ0ksSUFBdEMsRUFBNEM0QixLQUE1QztBQUFQO0FBQ0Q7O0FBRUQsU0FBT0EsS0FBUDtBQUNEOztBQUVELFNBQVN2QixlQUFULENBQXlCNEIsS0FBekIsRUFBZ0M7QUFDOUIsU0FBT0EsS0FBSyxDQUFDN0IsV0FBTixJQUFxQjZCLEtBQUssQ0FBQzdCLFdBQU4sS0FBc0I2QixLQUFLLENBQUMzQixXQUF4RDtBQUNEOztBQUVELFNBQVNHLFdBQVQsQ0FBcUJOLEtBQXJCLEVBQTRCTCxJQUE1QixFQUFrQ0MsTUFBbEMsRUFBMEM7QUFDeEMsTUFBSUQsSUFBSSxLQUFLQyxNQUFiLEVBQXFCO0FBQ25CLFdBQU9ELElBQVA7QUFDRCxHQUZELE1BRU87QUFDTEssSUFBQUEsS0FBSyxDQUFDK0IsUUFBTixHQUFpQixJQUFqQjtBQUNBLFdBQU87QUFBQ3BDLE1BQUFBLElBQUksRUFBSkEsSUFBRDtBQUFPQyxNQUFBQSxNQUFNLEVBQU5BO0FBQVAsS0FBUDtBQUNEO0FBQ0Y7O0FBRUQsU0FBU3FCLFVBQVQsQ0FBb0JTLElBQXBCLEVBQTBCTSxLQUExQixFQUFpQztBQUMvQixTQUFPTixJQUFJLENBQUNaLFFBQUwsR0FBZ0JrQixLQUFLLENBQUNsQixRQUF0QixJQUNEWSxJQUFJLENBQUNaLFFBQUwsR0FBZ0JZLElBQUksQ0FBQ25DLFFBQXRCLEdBQWtDeUMsS0FBSyxDQUFDbEIsUUFEN0M7QUFFRDs7QUFFRCxTQUFTSyxTQUFULENBQW1CL0IsSUFBbkIsRUFBeUI2QyxNQUF6QixFQUFpQztBQUMvQixTQUFPO0FBQ0xuQixJQUFBQSxRQUFRLEVBQUUxQixJQUFJLENBQUMwQixRQURWO0FBQ29CdkIsSUFBQUEsUUFBUSxFQUFFSCxJQUFJLENBQUNHLFFBRG5DO0FBRUxnQyxJQUFBQSxRQUFRLEVBQUVuQyxJQUFJLENBQUNtQyxRQUFMLEdBQWdCVSxNQUZyQjtBQUU2QnpDLElBQUFBLFFBQVEsRUFBRUosSUFBSSxDQUFDSSxRQUY1QztBQUdMRixJQUFBQSxLQUFLLEVBQUVGLElBQUksQ0FBQ0U7QUFIUCxHQUFQO0FBS0Q7O0FBRUQsU0FBU2tDLFVBQVQsQ0FBb0JwQyxJQUFwQixFQUEwQnNCLFVBQTFCLEVBQXNDd0IsU0FBdEMsRUFBaURDLFdBQWpELEVBQThEQyxVQUE5RCxFQUEwRTtBQUN4RTtBQUNBO0FBQ0EsTUFBSXpDLElBQUksR0FBRztBQUFDc0MsSUFBQUEsTUFBTSxFQUFFdkIsVUFBVDtBQUFxQnBCLElBQUFBLEtBQUssRUFBRTRDLFNBQTVCO0FBQXVDbEMsSUFBQUEsS0FBSyxFQUFFO0FBQTlDLEdBQVg7QUFBQSxNQUNJcUMsS0FBSyxHQUFHO0FBQUNKLElBQUFBLE1BQU0sRUFBRUUsV0FBVDtBQUFzQjdDLElBQUFBLEtBQUssRUFBRThDLFVBQTdCO0FBQXlDcEMsSUFBQUEsS0FBSyxFQUFFO0FBQWhELEdBRFosQ0FId0UsQ0FNeEU7O0FBQ0FzQyxFQUFBQSxhQUFhLENBQUNsRCxJQUFELEVBQU9PLElBQVAsRUFBYTBDLEtBQWIsQ0FBYjtBQUNBQyxFQUFBQSxhQUFhLENBQUNsRCxJQUFELEVBQU9pRCxLQUFQLEVBQWMxQyxJQUFkLENBQWIsQ0FSd0UsQ0FVeEU7O0FBQ0EsU0FBT0EsSUFBSSxDQUFDSyxLQUFMLEdBQWFMLElBQUksQ0FBQ0wsS0FBTCxDQUFXc0IsTUFBeEIsSUFBa0N5QixLQUFLLENBQUNyQyxLQUFOLEdBQWNxQyxLQUFLLENBQUMvQyxLQUFOLENBQVlzQixNQUFuRSxFQUEyRTtBQUN6RSxRQUFJQyxXQUFXLEdBQUdsQixJQUFJLENBQUNMLEtBQUwsQ0FBV0ssSUFBSSxDQUFDSyxLQUFoQixDQUFsQjtBQUFBLFFBQ0l1QyxZQUFZLEdBQUdGLEtBQUssQ0FBQy9DLEtBQU4sQ0FBWStDLEtBQUssQ0FBQ3JDLEtBQWxCLENBRG5COztBQUdBLFFBQUksQ0FBQ2EsV0FBVyxDQUFDLENBQUQsQ0FBWCxLQUFtQixHQUFuQixJQUEwQkEsV0FBVyxDQUFDLENBQUQsQ0FBWCxLQUFtQixHQUE5QyxNQUNJMEIsWUFBWSxDQUFDLENBQUQsQ0FBWixLQUFvQixHQUFwQixJQUEyQkEsWUFBWSxDQUFDLENBQUQsQ0FBWixLQUFvQixHQURuRCxDQUFKLEVBQzZEO0FBQzNEO0FBQ0FDLE1BQUFBLFlBQVksQ0FBQ3BELElBQUQsRUFBT08sSUFBUCxFQUFhMEMsS0FBYixDQUFaO0FBQ0QsS0FKRCxNQUlPLElBQUl4QixXQUFXLENBQUMsQ0FBRCxDQUFYLEtBQW1CLEdBQW5CLElBQTBCMEIsWUFBWSxDQUFDLENBQUQsQ0FBWixLQUFvQixHQUFsRCxFQUF1RDtBQUFBO0FBQUE7O0FBQUE7QUFDNUQ7O0FBQ0E7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUFuRCxNQUFBQSxJQUFJLENBQUNFLEtBQUwsRUFBVzRCLElBQVg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFvQnVCLE1BQUFBLGFBQWEsQ0FBQzlDLElBQUQsQ0FBakM7QUFDRCxLQUhNLE1BR0EsSUFBSTRDLFlBQVksQ0FBQyxDQUFELENBQVosS0FBb0IsR0FBcEIsSUFBMkIxQixXQUFXLENBQUMsQ0FBRCxDQUFYLEtBQW1CLEdBQWxELEVBQXVEO0FBQUE7QUFBQTs7QUFBQTtBQUM1RDs7QUFDQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQXpCLE1BQUFBLElBQUksQ0FBQ0UsS0FBTCxFQUFXNEIsSUFBWDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQW9CdUIsTUFBQUEsYUFBYSxDQUFDSixLQUFELENBQWpDO0FBQ0QsS0FITSxNQUdBLElBQUl4QixXQUFXLENBQUMsQ0FBRCxDQUFYLEtBQW1CLEdBQW5CLElBQTBCMEIsWUFBWSxDQUFDLENBQUQsQ0FBWixLQUFvQixHQUFsRCxFQUF1RDtBQUM1RDtBQUNBRyxNQUFBQSxPQUFPLENBQUN0RCxJQUFELEVBQU9PLElBQVAsRUFBYTBDLEtBQWIsQ0FBUDtBQUNELEtBSE0sTUFHQSxJQUFJRSxZQUFZLENBQUMsQ0FBRCxDQUFaLEtBQW9CLEdBQXBCLElBQTJCMUIsV0FBVyxDQUFDLENBQUQsQ0FBWCxLQUFtQixHQUFsRCxFQUF1RDtBQUM1RDtBQUNBNkIsTUFBQUEsT0FBTyxDQUFDdEQsSUFBRCxFQUFPaUQsS0FBUCxFQUFjMUMsSUFBZCxFQUFvQixJQUFwQixDQUFQO0FBQ0QsS0FITSxNQUdBLElBQUlrQixXQUFXLEtBQUswQixZQUFwQixFQUFrQztBQUN2QztBQUNBbkQsTUFBQUEsSUFBSSxDQUFDRSxLQUFMLENBQVc0QixJQUFYLENBQWdCTCxXQUFoQjtBQUNBbEIsTUFBQUEsSUFBSSxDQUFDSyxLQUFMO0FBQ0FxQyxNQUFBQSxLQUFLLENBQUNyQyxLQUFOO0FBQ0QsS0FMTSxNQUtBO0FBQ0w7QUFDQStCLE1BQUFBLFFBQVEsQ0FBQzNDLElBQUQsRUFBT3FELGFBQWEsQ0FBQzlDLElBQUQsQ0FBcEIsRUFBNEI4QyxhQUFhLENBQUNKLEtBQUQsQ0FBekMsQ0FBUjtBQUNEO0FBQ0YsR0F4Q3VFLENBMEN4RTs7O0FBQ0FNLEVBQUFBLGNBQWMsQ0FBQ3ZELElBQUQsRUFBT08sSUFBUCxDQUFkO0FBQ0FnRCxFQUFBQSxjQUFjLENBQUN2RCxJQUFELEVBQU9pRCxLQUFQLENBQWQ7QUFFQWxELEVBQUFBLGFBQWEsQ0FBQ0MsSUFBRCxDQUFiO0FBQ0Q7O0FBRUQsU0FBU29ELFlBQVQsQ0FBc0JwRCxJQUF0QixFQUE0Qk8sSUFBNUIsRUFBa0MwQyxLQUFsQyxFQUF5QztBQUN2QyxNQUFJTyxTQUFTLEdBQUdILGFBQWEsQ0FBQzlDLElBQUQsQ0FBN0I7QUFBQSxNQUNJa0QsWUFBWSxHQUFHSixhQUFhLENBQUNKLEtBQUQsQ0FEaEM7O0FBR0EsTUFBSVMsVUFBVSxDQUFDRixTQUFELENBQVYsSUFBeUJFLFVBQVUsQ0FBQ0QsWUFBRCxDQUF2QyxFQUF1RDtBQUNyRDtBQUNBO0FBQUk7QUFBQTtBQUFBOztBQUFBRTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBO0FBQUEsS0FBZ0JILFNBQWhCLEVBQTJCQyxZQUEzQixLQUNHRyxrQkFBa0IsQ0FBQ1gsS0FBRCxFQUFRTyxTQUFSLEVBQW1CQSxTQUFTLENBQUNoQyxNQUFWLEdBQW1CaUMsWUFBWSxDQUFDakMsTUFBbkQsQ0FEekIsRUFDcUY7QUFBQTtBQUFBOztBQUFBOztBQUNuRjs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQXhCLE1BQUFBLElBQUksQ0FBQ0UsS0FBTCxFQUFXNEIsSUFBWDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQW9CMEIsTUFBQUEsU0FBcEI7O0FBQ0E7QUFDRCxLQUpELE1BSU87QUFBSTtBQUFBO0FBQUE7O0FBQUFHO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUE7QUFBQSxLQUFnQkYsWUFBaEIsRUFBOEJELFNBQTlCLEtBQ0pJLGtCQUFrQixDQUFDckQsSUFBRCxFQUFPa0QsWUFBUCxFQUFxQkEsWUFBWSxDQUFDakMsTUFBYixHQUFzQmdDLFNBQVMsQ0FBQ2hDLE1BQXJELENBRGxCLEVBQ2dGO0FBQUE7QUFBQTs7QUFBQTs7QUFDckY7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUF4QixNQUFBQSxJQUFJLENBQUNFLEtBQUwsRUFBVzRCLElBQVg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFvQjJCLE1BQUFBLFlBQXBCOztBQUNBO0FBQ0Q7QUFDRixHQVhELE1BV087QUFBSTtBQUFBO0FBQUE7O0FBQUFJO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUE7QUFBQSxHQUFXTCxTQUFYLEVBQXNCQyxZQUF0QixDQUFKLEVBQXlDO0FBQUE7QUFBQTs7QUFBQTs7QUFDOUM7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUF6RCxJQUFBQSxJQUFJLENBQUNFLEtBQUwsRUFBVzRCLElBQVg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFvQjBCLElBQUFBLFNBQXBCOztBQUNBO0FBQ0Q7O0FBRURiLEVBQUFBLFFBQVEsQ0FBQzNDLElBQUQsRUFBT3dELFNBQVAsRUFBa0JDLFlBQWxCLENBQVI7QUFDRDs7QUFFRCxTQUFTSCxPQUFULENBQWlCdEQsSUFBakIsRUFBdUJPLElBQXZCLEVBQTZCMEMsS0FBN0IsRUFBb0NhLElBQXBDLEVBQTBDO0FBQ3hDLE1BQUlOLFNBQVMsR0FBR0gsYUFBYSxDQUFDOUMsSUFBRCxDQUE3QjtBQUFBLE1BQ0lrRCxZQUFZLEdBQUdNLGNBQWMsQ0FBQ2QsS0FBRCxFQUFRTyxTQUFSLENBRGpDOztBQUVBLE1BQUlDLFlBQVksQ0FBQ08sTUFBakIsRUFBeUI7QUFBQTtBQUFBOztBQUFBOztBQUN2Qjs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQWhFLElBQUFBLElBQUksQ0FBQ0UsS0FBTCxFQUFXNEIsSUFBWDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQW9CMkIsSUFBQUEsWUFBWSxDQUFDTyxNQUFqQztBQUNELEdBRkQsTUFFTztBQUNMckIsSUFBQUEsUUFBUSxDQUFDM0MsSUFBRCxFQUFPOEQsSUFBSSxHQUFHTCxZQUFILEdBQWtCRCxTQUE3QixFQUF3Q00sSUFBSSxHQUFHTixTQUFILEdBQWVDLFlBQTNELENBQVI7QUFDRDtBQUNGOztBQUVELFNBQVNkLFFBQVQsQ0FBa0IzQyxJQUFsQixFQUF3Qk8sSUFBeEIsRUFBOEIwQyxLQUE5QixFQUFxQztBQUNuQ2pELEVBQUFBLElBQUksQ0FBQzJDLFFBQUwsR0FBZ0IsSUFBaEI7QUFDQTNDLEVBQUFBLElBQUksQ0FBQ0UsS0FBTCxDQUFXNEIsSUFBWCxDQUFnQjtBQUNkYSxJQUFBQSxRQUFRLEVBQUUsSUFESTtBQUVkcEMsSUFBQUEsSUFBSSxFQUFFQSxJQUZRO0FBR2RDLElBQUFBLE1BQU0sRUFBRXlDO0FBSE0sR0FBaEI7QUFLRDs7QUFFRCxTQUFTQyxhQUFULENBQXVCbEQsSUFBdkIsRUFBNkJpRSxNQUE3QixFQUFxQ2hCLEtBQXJDLEVBQTRDO0FBQzFDLFNBQU9nQixNQUFNLENBQUNwQixNQUFQLEdBQWdCSSxLQUFLLENBQUNKLE1BQXRCLElBQWdDb0IsTUFBTSxDQUFDckQsS0FBUCxHQUFlcUQsTUFBTSxDQUFDL0QsS0FBUCxDQUFhc0IsTUFBbkUsRUFBMkU7QUFDekUsUUFBSTBDLElBQUksR0FBR0QsTUFBTSxDQUFDL0QsS0FBUCxDQUFhK0QsTUFBTSxDQUFDckQsS0FBUCxFQUFiLENBQVg7QUFDQVosSUFBQUEsSUFBSSxDQUFDRSxLQUFMLENBQVc0QixJQUFYLENBQWdCb0MsSUFBaEI7QUFDQUQsSUFBQUEsTUFBTSxDQUFDcEIsTUFBUDtBQUNEO0FBQ0Y7O0FBQ0QsU0FBU1UsY0FBVCxDQUF3QnZELElBQXhCLEVBQThCaUUsTUFBOUIsRUFBc0M7QUFDcEMsU0FBT0EsTUFBTSxDQUFDckQsS0FBUCxHQUFlcUQsTUFBTSxDQUFDL0QsS0FBUCxDQUFhc0IsTUFBbkMsRUFBMkM7QUFDekMsUUFBSTBDLElBQUksR0FBR0QsTUFBTSxDQUFDL0QsS0FBUCxDQUFhK0QsTUFBTSxDQUFDckQsS0FBUCxFQUFiLENBQVg7QUFDQVosSUFBQUEsSUFBSSxDQUFDRSxLQUFMLENBQVc0QixJQUFYLENBQWdCb0MsSUFBaEI7QUFDRDtBQUNGOztBQUVELFNBQVNiLGFBQVQsQ0FBdUJjLEtBQXZCLEVBQThCO0FBQzVCLE1BQUl4RCxHQUFHLEdBQUcsRUFBVjtBQUFBLE1BQ0l5RCxTQUFTLEdBQUdELEtBQUssQ0FBQ2pFLEtBQU4sQ0FBWWlFLEtBQUssQ0FBQ3ZELEtBQWxCLEVBQXlCLENBQXpCLENBRGhCOztBQUVBLFNBQU91RCxLQUFLLENBQUN2RCxLQUFOLEdBQWN1RCxLQUFLLENBQUNqRSxLQUFOLENBQVlzQixNQUFqQyxFQUF5QztBQUN2QyxRQUFJMEMsSUFBSSxHQUFHQyxLQUFLLENBQUNqRSxLQUFOLENBQVlpRSxLQUFLLENBQUN2RCxLQUFsQixDQUFYLENBRHVDLENBR3ZDOztBQUNBLFFBQUl3RCxTQUFTLEtBQUssR0FBZCxJQUFxQkYsSUFBSSxDQUFDLENBQUQsQ0FBSixLQUFZLEdBQXJDLEVBQTBDO0FBQ3hDRSxNQUFBQSxTQUFTLEdBQUcsR0FBWjtBQUNEOztBQUVELFFBQUlBLFNBQVMsS0FBS0YsSUFBSSxDQUFDLENBQUQsQ0FBdEIsRUFBMkI7QUFDekJ2RCxNQUFBQSxHQUFHLENBQUNtQixJQUFKLENBQVNvQyxJQUFUO0FBQ0FDLE1BQUFBLEtBQUssQ0FBQ3ZELEtBQU47QUFDRCxLQUhELE1BR087QUFDTDtBQUNEO0FBQ0Y7O0FBRUQsU0FBT0QsR0FBUDtBQUNEOztBQUNELFNBQVNvRCxjQUFULENBQXdCSSxLQUF4QixFQUErQkUsWUFBL0IsRUFBNkM7QUFDM0MsTUFBSUMsT0FBTyxHQUFHLEVBQWQ7QUFBQSxNQUNJTixNQUFNLEdBQUcsRUFEYjtBQUFBLE1BRUlPLFVBQVUsR0FBRyxDQUZqQjtBQUFBLE1BR0lDLGNBQWMsR0FBRyxLQUhyQjtBQUFBLE1BSUlDLFVBQVUsR0FBRyxLQUpqQjs7QUFLQSxTQUFPRixVQUFVLEdBQUdGLFlBQVksQ0FBQzdDLE1BQTFCLElBQ0UyQyxLQUFLLENBQUN2RCxLQUFOLEdBQWN1RCxLQUFLLENBQUNqRSxLQUFOLENBQVlzQixNQURuQyxFQUMyQztBQUN6QyxRQUFJa0QsTUFBTSxHQUFHUCxLQUFLLENBQUNqRSxLQUFOLENBQVlpRSxLQUFLLENBQUN2RCxLQUFsQixDQUFiO0FBQUEsUUFDSStELEtBQUssR0FBR04sWUFBWSxDQUFDRSxVQUFELENBRHhCLENBRHlDLENBSXpDOztBQUNBLFFBQUlJLEtBQUssQ0FBQyxDQUFELENBQUwsS0FBYSxHQUFqQixFQUFzQjtBQUNwQjtBQUNEOztBQUVESCxJQUFBQSxjQUFjLEdBQUdBLGNBQWMsSUFBSUUsTUFBTSxDQUFDLENBQUQsQ0FBTixLQUFjLEdBQWpEO0FBRUFWLElBQUFBLE1BQU0sQ0FBQ2xDLElBQVAsQ0FBWTZDLEtBQVo7QUFDQUosSUFBQUEsVUFBVSxHQVorQixDQWN6QztBQUNBOztBQUNBLFFBQUlHLE1BQU0sQ0FBQyxDQUFELENBQU4sS0FBYyxHQUFsQixFQUF1QjtBQUNyQkQsTUFBQUEsVUFBVSxHQUFHLElBQWI7O0FBRUEsYUFBT0MsTUFBTSxDQUFDLENBQUQsQ0FBTixLQUFjLEdBQXJCLEVBQTBCO0FBQ3hCSixRQUFBQSxPQUFPLENBQUN4QyxJQUFSLENBQWE0QyxNQUFiO0FBQ0FBLFFBQUFBLE1BQU0sR0FBR1AsS0FBSyxDQUFDakUsS0FBTixDQUFZLEVBQUVpRSxLQUFLLENBQUN2RCxLQUFwQixDQUFUO0FBQ0Q7QUFDRjs7QUFFRCxRQUFJK0QsS0FBSyxDQUFDQyxNQUFOLENBQWEsQ0FBYixNQUFvQkYsTUFBTSxDQUFDRSxNQUFQLENBQWMsQ0FBZCxDQUF4QixFQUEwQztBQUN4Q04sTUFBQUEsT0FBTyxDQUFDeEMsSUFBUixDQUFhNEMsTUFBYjtBQUNBUCxNQUFBQSxLQUFLLENBQUN2RCxLQUFOO0FBQ0QsS0FIRCxNQUdPO0FBQ0w2RCxNQUFBQSxVQUFVLEdBQUcsSUFBYjtBQUNEO0FBQ0Y7O0FBRUQsTUFBSSxDQUFDSixZQUFZLENBQUNFLFVBQUQsQ0FBWixJQUE0QixFQUE3QixFQUFpQyxDQUFqQyxNQUF3QyxHQUF4QyxJQUNHQyxjQURQLEVBQ3VCO0FBQ3JCQyxJQUFBQSxVQUFVLEdBQUcsSUFBYjtBQUNEOztBQUVELE1BQUlBLFVBQUosRUFBZ0I7QUFDZCxXQUFPSCxPQUFQO0FBQ0Q7O0FBRUQsU0FBT0MsVUFBVSxHQUFHRixZQUFZLENBQUM3QyxNQUFqQyxFQUF5QztBQUN2Q3dDLElBQUFBLE1BQU0sQ0FBQ2xDLElBQVAsQ0FBWXVDLFlBQVksQ0FBQ0UsVUFBVSxFQUFYLENBQXhCO0FBQ0Q7O0FBRUQsU0FBTztBQUNMUCxJQUFBQSxNQUFNLEVBQU5BLE1BREs7QUFFTE0sSUFBQUEsT0FBTyxFQUFQQTtBQUZLLEdBQVA7QUFJRDs7QUFFRCxTQUFTWixVQUFULENBQW9CWSxPQUFwQixFQUE2QjtBQUMzQixTQUFPQSxPQUFPLENBQUNPLE1BQVIsQ0FBZSxVQUFTQyxJQUFULEVBQWVKLE1BQWYsRUFBdUI7QUFDM0MsV0FBT0ksSUFBSSxJQUFJSixNQUFNLENBQUMsQ0FBRCxDQUFOLEtBQWMsR0FBN0I7QUFDRCxHQUZNLEVBRUosSUFGSSxDQUFQO0FBR0Q7O0FBQ0QsU0FBU2Qsa0JBQVQsQ0FBNEJPLEtBQTVCLEVBQW1DWSxhQUFuQyxFQUFrREMsS0FBbEQsRUFBeUQ7QUFDdkQsT0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHRCxLQUFwQixFQUEyQkMsQ0FBQyxFQUE1QixFQUFnQztBQUM5QixRQUFJQyxhQUFhLEdBQUdILGFBQWEsQ0FBQ0EsYUFBYSxDQUFDdkQsTUFBZCxHQUF1QndELEtBQXZCLEdBQStCQyxDQUFoQyxDQUFiLENBQWdETCxNQUFoRCxDQUF1RCxDQUF2RCxDQUFwQjs7QUFDQSxRQUFJVCxLQUFLLENBQUNqRSxLQUFOLENBQVlpRSxLQUFLLENBQUN2RCxLQUFOLEdBQWNxRSxDQUExQixNQUFpQyxNQUFNQyxhQUEzQyxFQUEwRDtBQUN4RCxhQUFPLEtBQVA7QUFDRDtBQUNGOztBQUVEZixFQUFBQSxLQUFLLENBQUN2RCxLQUFOLElBQWVvRSxLQUFmO0FBQ0EsU0FBTyxJQUFQO0FBQ0Q7O0FBRUQsU0FBUy9FLG1CQUFULENBQTZCQyxLQUE3QixFQUFvQztBQUNsQyxNQUFJQyxRQUFRLEdBQUcsQ0FBZjtBQUNBLE1BQUlDLFFBQVEsR0FBRyxDQUFmO0FBRUFGLEVBQUFBLEtBQUssQ0FBQ2lGLE9BQU4sQ0FBYyxVQUFTakIsSUFBVCxFQUFlO0FBQzNCLFFBQUksT0FBT0EsSUFBUCxLQUFnQixRQUFwQixFQUE4QjtBQUM1QixVQUFJa0IsT0FBTyxHQUFHbkYsbUJBQW1CLENBQUNpRSxJQUFJLENBQUMzRCxJQUFOLENBQWpDO0FBQ0EsVUFBSThFLFVBQVUsR0FBR3BGLG1CQUFtQixDQUFDaUUsSUFBSSxDQUFDMUQsTUFBTixDQUFwQzs7QUFFQSxVQUFJTCxRQUFRLEtBQUtFLFNBQWpCLEVBQTRCO0FBQzFCLFlBQUkrRSxPQUFPLENBQUNqRixRQUFSLEtBQXFCa0YsVUFBVSxDQUFDbEYsUUFBcEMsRUFBOEM7QUFDNUNBLFVBQUFBLFFBQVEsSUFBSWlGLE9BQU8sQ0FBQ2pGLFFBQXBCO0FBQ0QsU0FGRCxNQUVPO0FBQ0xBLFVBQUFBLFFBQVEsR0FBR0UsU0FBWDtBQUNEO0FBQ0Y7O0FBRUQsVUFBSUQsUUFBUSxLQUFLQyxTQUFqQixFQUE0QjtBQUMxQixZQUFJK0UsT0FBTyxDQUFDaEYsUUFBUixLQUFxQmlGLFVBQVUsQ0FBQ2pGLFFBQXBDLEVBQThDO0FBQzVDQSxVQUFBQSxRQUFRLElBQUlnRixPQUFPLENBQUNoRixRQUFwQjtBQUNELFNBRkQsTUFFTztBQUNMQSxVQUFBQSxRQUFRLEdBQUdDLFNBQVg7QUFDRDtBQUNGO0FBQ0YsS0FuQkQsTUFtQk87QUFDTCxVQUFJRCxRQUFRLEtBQUtDLFNBQWIsS0FBMkI2RCxJQUFJLENBQUMsQ0FBRCxDQUFKLEtBQVksR0FBWixJQUFtQkEsSUFBSSxDQUFDLENBQUQsQ0FBSixLQUFZLEdBQTFELENBQUosRUFBb0U7QUFDbEU5RCxRQUFBQSxRQUFRO0FBQ1Q7O0FBQ0QsVUFBSUQsUUFBUSxLQUFLRSxTQUFiLEtBQTJCNkQsSUFBSSxDQUFDLENBQUQsQ0FBSixLQUFZLEdBQVosSUFBbUJBLElBQUksQ0FBQyxDQUFELENBQUosS0FBWSxHQUExRCxDQUFKLEVBQW9FO0FBQ2xFL0QsUUFBQUEsUUFBUTtBQUNUO0FBQ0Y7QUFDRixHQTVCRDtBQThCQSxTQUFPO0FBQUNBLElBQUFBLFFBQVEsRUFBUkEsUUFBRDtBQUFXQyxJQUFBQSxRQUFRLEVBQVJBO0FBQVgsR0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtzdHJ1Y3R1cmVkUGF0Y2h9IGZyb20gJy4vY3JlYXRlJztcbmltcG9ydCB7cGFyc2VQYXRjaH0gZnJvbSAnLi9wYXJzZSc7XG5cbmltcG9ydCB7YXJyYXlFcXVhbCwgYXJyYXlTdGFydHNXaXRofSBmcm9tICcuLi91dGlsL2FycmF5JztcblxuZXhwb3J0IGZ1bmN0aW9uIGNhbGNMaW5lQ291bnQoaHVuaykge1xuICBjb25zdCB7b2xkTGluZXMsIG5ld0xpbmVzfSA9IGNhbGNPbGROZXdMaW5lQ291bnQoaHVuay5saW5lcyk7XG5cbiAgaWYgKG9sZExpbmVzICE9PSB1bmRlZmluZWQpIHtcbiAgICBodW5rLm9sZExpbmVzID0gb2xkTGluZXM7XG4gIH0gZWxzZSB7XG4gICAgZGVsZXRlIGh1bmsub2xkTGluZXM7XG4gIH1cblxuICBpZiAobmV3TGluZXMgIT09IHVuZGVmaW5lZCkge1xuICAgIGh1bmsubmV3TGluZXMgPSBuZXdMaW5lcztcbiAgfSBlbHNlIHtcbiAgICBkZWxldGUgaHVuay5uZXdMaW5lcztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2UobWluZSwgdGhlaXJzLCBiYXNlKSB7XG4gIG1pbmUgPSBsb2FkUGF0Y2gobWluZSwgYmFzZSk7XG4gIHRoZWlycyA9IGxvYWRQYXRjaCh0aGVpcnMsIGJhc2UpO1xuXG4gIGxldCByZXQgPSB7fTtcblxuICAvLyBGb3IgaW5kZXggd2UganVzdCBsZXQgaXQgcGFzcyB0aHJvdWdoIGFzIGl0IGRvZXNuJ3QgaGF2ZSBhbnkgbmVjZXNzYXJ5IG1lYW5pbmcuXG4gIC8vIExlYXZpbmcgc2FuaXR5IGNoZWNrcyBvbiB0aGlzIHRvIHRoZSBBUEkgY29uc3VtZXIgdGhhdCBtYXkga25vdyBtb3JlIGFib3V0IHRoZVxuICAvLyBtZWFuaW5nIGluIHRoZWlyIG93biBjb250ZXh0LlxuICBpZiAobWluZS5pbmRleCB8fCB0aGVpcnMuaW5kZXgpIHtcbiAgICByZXQuaW5kZXggPSBtaW5lLmluZGV4IHx8IHRoZWlycy5pbmRleDtcbiAgfVxuXG4gIGlmIChtaW5lLm5ld0ZpbGVOYW1lIHx8IHRoZWlycy5uZXdGaWxlTmFtZSkge1xuICAgIGlmICghZmlsZU5hbWVDaGFuZ2VkKG1pbmUpKSB7XG4gICAgICAvLyBObyBoZWFkZXIgb3Igbm8gY2hhbmdlIGluIG91cnMsIHVzZSB0aGVpcnMgKGFuZCBvdXJzIGlmIHRoZWlycyBkb2VzIG5vdCBleGlzdClcbiAgICAgIHJldC5vbGRGaWxlTmFtZSA9IHRoZWlycy5vbGRGaWxlTmFtZSB8fCBtaW5lLm9sZEZpbGVOYW1lO1xuICAgICAgcmV0Lm5ld0ZpbGVOYW1lID0gdGhlaXJzLm5ld0ZpbGVOYW1lIHx8IG1pbmUubmV3RmlsZU5hbWU7XG4gICAgICByZXQub2xkSGVhZGVyID0gdGhlaXJzLm9sZEhlYWRlciB8fCBtaW5lLm9sZEhlYWRlcjtcbiAgICAgIHJldC5uZXdIZWFkZXIgPSB0aGVpcnMubmV3SGVhZGVyIHx8IG1pbmUubmV3SGVhZGVyO1xuICAgIH0gZWxzZSBpZiAoIWZpbGVOYW1lQ2hhbmdlZCh0aGVpcnMpKSB7XG4gICAgICAvLyBObyBoZWFkZXIgb3Igbm8gY2hhbmdlIGluIHRoZWlycywgdXNlIG91cnNcbiAgICAgIHJldC5vbGRGaWxlTmFtZSA9IG1pbmUub2xkRmlsZU5hbWU7XG4gICAgICByZXQubmV3RmlsZU5hbWUgPSBtaW5lLm5ld0ZpbGVOYW1lO1xuICAgICAgcmV0Lm9sZEhlYWRlciA9IG1pbmUub2xkSGVhZGVyO1xuICAgICAgcmV0Lm5ld0hlYWRlciA9IG1pbmUubmV3SGVhZGVyO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBCb3RoIGNoYW5nZWQuLi4gZmlndXJlIGl0IG91dFxuICAgICAgcmV0Lm9sZEZpbGVOYW1lID0gc2VsZWN0RmllbGQocmV0LCBtaW5lLm9sZEZpbGVOYW1lLCB0aGVpcnMub2xkRmlsZU5hbWUpO1xuICAgICAgcmV0Lm5ld0ZpbGVOYW1lID0gc2VsZWN0RmllbGQocmV0LCBtaW5lLm5ld0ZpbGVOYW1lLCB0aGVpcnMubmV3RmlsZU5hbWUpO1xuICAgICAgcmV0Lm9sZEhlYWRlciA9IHNlbGVjdEZpZWxkKHJldCwgbWluZS5vbGRIZWFkZXIsIHRoZWlycy5vbGRIZWFkZXIpO1xuICAgICAgcmV0Lm5ld0hlYWRlciA9IHNlbGVjdEZpZWxkKHJldCwgbWluZS5uZXdIZWFkZXIsIHRoZWlycy5uZXdIZWFkZXIpO1xuICAgIH1cbiAgfVxuXG4gIHJldC5odW5rcyA9IFtdO1xuXG4gIGxldCBtaW5lSW5kZXggPSAwLFxuICAgICAgdGhlaXJzSW5kZXggPSAwLFxuICAgICAgbWluZU9mZnNldCA9IDAsXG4gICAgICB0aGVpcnNPZmZzZXQgPSAwO1xuXG4gIHdoaWxlIChtaW5lSW5kZXggPCBtaW5lLmh1bmtzLmxlbmd0aCB8fCB0aGVpcnNJbmRleCA8IHRoZWlycy5odW5rcy5sZW5ndGgpIHtcbiAgICBsZXQgbWluZUN1cnJlbnQgPSBtaW5lLmh1bmtzW21pbmVJbmRleF0gfHwge29sZFN0YXJ0OiBJbmZpbml0eX0sXG4gICAgICAgIHRoZWlyc0N1cnJlbnQgPSB0aGVpcnMuaHVua3NbdGhlaXJzSW5kZXhdIHx8IHtvbGRTdGFydDogSW5maW5pdHl9O1xuXG4gICAgaWYgKGh1bmtCZWZvcmUobWluZUN1cnJlbnQsIHRoZWlyc0N1cnJlbnQpKSB7XG4gICAgICAvLyBUaGlzIHBhdGNoIGRvZXMgbm90IG92ZXJsYXAgd2l0aCBhbnkgb2YgdGhlIG90aGVycywgeWF5LlxuICAgICAgcmV0Lmh1bmtzLnB1c2goY2xvbmVIdW5rKG1pbmVDdXJyZW50LCBtaW5lT2Zmc2V0KSk7XG4gICAgICBtaW5lSW5kZXgrKztcbiAgICAgIHRoZWlyc09mZnNldCArPSBtaW5lQ3VycmVudC5uZXdMaW5lcyAtIG1pbmVDdXJyZW50Lm9sZExpbmVzO1xuICAgIH0gZWxzZSBpZiAoaHVua0JlZm9yZSh0aGVpcnNDdXJyZW50LCBtaW5lQ3VycmVudCkpIHtcbiAgICAgIC8vIFRoaXMgcGF0Y2ggZG9lcyBub3Qgb3ZlcmxhcCB3aXRoIGFueSBvZiB0aGUgb3RoZXJzLCB5YXkuXG4gICAgICByZXQuaHVua3MucHVzaChjbG9uZUh1bmsodGhlaXJzQ3VycmVudCwgdGhlaXJzT2Zmc2V0KSk7XG4gICAgICB0aGVpcnNJbmRleCsrO1xuICAgICAgbWluZU9mZnNldCArPSB0aGVpcnNDdXJyZW50Lm5ld0xpbmVzIC0gdGhlaXJzQ3VycmVudC5vbGRMaW5lcztcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gT3ZlcmxhcCwgbWVyZ2UgYXMgYmVzdCB3ZSBjYW5cbiAgICAgIGxldCBtZXJnZWRIdW5rID0ge1xuICAgICAgICBvbGRTdGFydDogTWF0aC5taW4obWluZUN1cnJlbnQub2xkU3RhcnQsIHRoZWlyc0N1cnJlbnQub2xkU3RhcnQpLFxuICAgICAgICBvbGRMaW5lczogMCxcbiAgICAgICAgbmV3U3RhcnQ6IE1hdGgubWluKG1pbmVDdXJyZW50Lm5ld1N0YXJ0ICsgbWluZU9mZnNldCwgdGhlaXJzQ3VycmVudC5vbGRTdGFydCArIHRoZWlyc09mZnNldCksXG4gICAgICAgIG5ld0xpbmVzOiAwLFxuICAgICAgICBsaW5lczogW11cbiAgICAgIH07XG4gICAgICBtZXJnZUxpbmVzKG1lcmdlZEh1bmssIG1pbmVDdXJyZW50Lm9sZFN0YXJ0LCBtaW5lQ3VycmVudC5saW5lcywgdGhlaXJzQ3VycmVudC5vbGRTdGFydCwgdGhlaXJzQ3VycmVudC5saW5lcyk7XG4gICAgICB0aGVpcnNJbmRleCsrO1xuICAgICAgbWluZUluZGV4Kys7XG5cbiAgICAgIHJldC5odW5rcy5wdXNoKG1lcmdlZEh1bmspO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXQ7XG59XG5cbmZ1bmN0aW9uIGxvYWRQYXRjaChwYXJhbSwgYmFzZSkge1xuICBpZiAodHlwZW9mIHBhcmFtID09PSAnc3RyaW5nJykge1xuICAgIGlmICgoL15AQC9tKS50ZXN0KHBhcmFtKSB8fCAoKC9eSW5kZXg6L20pLnRlc3QocGFyYW0pKSkge1xuICAgICAgcmV0dXJuIHBhcnNlUGF0Y2gocGFyYW0pWzBdO1xuICAgIH1cblxuICAgIGlmICghYmFzZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNdXN0IHByb3ZpZGUgYSBiYXNlIHJlZmVyZW5jZSBvciBwYXNzIGluIGEgcGF0Y2gnKTtcbiAgICB9XG4gICAgcmV0dXJuIHN0cnVjdHVyZWRQYXRjaCh1bmRlZmluZWQsIHVuZGVmaW5lZCwgYmFzZSwgcGFyYW0pO1xuICB9XG5cbiAgcmV0dXJuIHBhcmFtO1xufVxuXG5mdW5jdGlvbiBmaWxlTmFtZUNoYW5nZWQocGF0Y2gpIHtcbiAgcmV0dXJuIHBhdGNoLm5ld0ZpbGVOYW1lICYmIHBhdGNoLm5ld0ZpbGVOYW1lICE9PSBwYXRjaC5vbGRGaWxlTmFtZTtcbn1cblxuZnVuY3Rpb24gc2VsZWN0RmllbGQoaW5kZXgsIG1pbmUsIHRoZWlycykge1xuICBpZiAobWluZSA9PT0gdGhlaXJzKSB7XG4gICAgcmV0dXJuIG1pbmU7XG4gIH0gZWxzZSB7XG4gICAgaW5kZXguY29uZmxpY3QgPSB0cnVlO1xuICAgIHJldHVybiB7bWluZSwgdGhlaXJzfTtcbiAgfVxufVxuXG5mdW5jdGlvbiBodW5rQmVmb3JlKHRlc3QsIGNoZWNrKSB7XG4gIHJldHVybiB0ZXN0Lm9sZFN0YXJ0IDwgY2hlY2sub2xkU3RhcnRcbiAgICAmJiAodGVzdC5vbGRTdGFydCArIHRlc3Qub2xkTGluZXMpIDwgY2hlY2sub2xkU3RhcnQ7XG59XG5cbmZ1bmN0aW9uIGNsb25lSHVuayhodW5rLCBvZmZzZXQpIHtcbiAgcmV0dXJuIHtcbiAgICBvbGRTdGFydDogaHVuay5vbGRTdGFydCwgb2xkTGluZXM6IGh1bmsub2xkTGluZXMsXG4gICAgbmV3U3RhcnQ6IGh1bmsubmV3U3RhcnQgKyBvZmZzZXQsIG5ld0xpbmVzOiBodW5rLm5ld0xpbmVzLFxuICAgIGxpbmVzOiBodW5rLmxpbmVzXG4gIH07XG59XG5cbmZ1bmN0aW9uIG1lcmdlTGluZXMoaHVuaywgbWluZU9mZnNldCwgbWluZUxpbmVzLCB0aGVpck9mZnNldCwgdGhlaXJMaW5lcykge1xuICAvLyBUaGlzIHdpbGwgZ2VuZXJhbGx5IHJlc3VsdCBpbiBhIGNvbmZsaWN0ZWQgaHVuaywgYnV0IHRoZXJlIGFyZSBjYXNlcyB3aGVyZSB0aGUgY29udGV4dFxuICAvLyBpcyB0aGUgb25seSBvdmVybGFwIHdoZXJlIHdlIGNhbiBzdWNjZXNzZnVsbHkgbWVyZ2UgdGhlIGNvbnRlbnQgaGVyZS5cbiAgbGV0IG1pbmUgPSB7b2Zmc2V0OiBtaW5lT2Zmc2V0LCBsaW5lczogbWluZUxpbmVzLCBpbmRleDogMH0sXG4gICAgICB0aGVpciA9IHtvZmZzZXQ6IHRoZWlyT2Zmc2V0LCBsaW5lczogdGhlaXJMaW5lcywgaW5kZXg6IDB9O1xuXG4gIC8vIEhhbmRsZSBhbnkgbGVhZGluZyBjb250ZW50XG4gIGluc2VydExlYWRpbmcoaHVuaywgbWluZSwgdGhlaXIpO1xuICBpbnNlcnRMZWFkaW5nKGh1bmssIHRoZWlyLCBtaW5lKTtcblxuICAvLyBOb3cgaW4gdGhlIG92ZXJsYXAgY29udGVudC4gU2NhbiB0aHJvdWdoIGFuZCBzZWxlY3QgdGhlIGJlc3QgY2hhbmdlcyBmcm9tIGVhY2guXG4gIHdoaWxlIChtaW5lLmluZGV4IDwgbWluZS5saW5lcy5sZW5ndGggJiYgdGhlaXIuaW5kZXggPCB0aGVpci5saW5lcy5sZW5ndGgpIHtcbiAgICBsZXQgbWluZUN1cnJlbnQgPSBtaW5lLmxpbmVzW21pbmUuaW5kZXhdLFxuICAgICAgICB0aGVpckN1cnJlbnQgPSB0aGVpci5saW5lc1t0aGVpci5pbmRleF07XG5cbiAgICBpZiAoKG1pbmVDdXJyZW50WzBdID09PSAnLScgfHwgbWluZUN1cnJlbnRbMF0gPT09ICcrJylcbiAgICAgICAgJiYgKHRoZWlyQ3VycmVudFswXSA9PT0gJy0nIHx8IHRoZWlyQ3VycmVudFswXSA9PT0gJysnKSkge1xuICAgICAgLy8gQm90aCBtb2RpZmllZCAuLi5cbiAgICAgIG11dHVhbENoYW5nZShodW5rLCBtaW5lLCB0aGVpcik7XG4gICAgfSBlbHNlIGlmIChtaW5lQ3VycmVudFswXSA9PT0gJysnICYmIHRoZWlyQ3VycmVudFswXSA9PT0gJyAnKSB7XG4gICAgICAvLyBNaW5lIGluc2VydGVkXG4gICAgICBodW5rLmxpbmVzLnB1c2goLi4uIGNvbGxlY3RDaGFuZ2UobWluZSkpO1xuICAgIH0gZWxzZSBpZiAodGhlaXJDdXJyZW50WzBdID09PSAnKycgJiYgbWluZUN1cnJlbnRbMF0gPT09ICcgJykge1xuICAgICAgLy8gVGhlaXJzIGluc2VydGVkXG4gICAgICBodW5rLmxpbmVzLnB1c2goLi4uIGNvbGxlY3RDaGFuZ2UodGhlaXIpKTtcbiAgICB9IGVsc2UgaWYgKG1pbmVDdXJyZW50WzBdID09PSAnLScgJiYgdGhlaXJDdXJyZW50WzBdID09PSAnICcpIHtcbiAgICAgIC8vIE1pbmUgcmVtb3ZlZCBvciBlZGl0ZWRcbiAgICAgIHJlbW92YWwoaHVuaywgbWluZSwgdGhlaXIpO1xuICAgIH0gZWxzZSBpZiAodGhlaXJDdXJyZW50WzBdID09PSAnLScgJiYgbWluZUN1cnJlbnRbMF0gPT09ICcgJykge1xuICAgICAgLy8gVGhlaXIgcmVtb3ZlZCBvciBlZGl0ZWRcbiAgICAgIHJlbW92YWwoaHVuaywgdGhlaXIsIG1pbmUsIHRydWUpO1xuICAgIH0gZWxzZSBpZiAobWluZUN1cnJlbnQgPT09IHRoZWlyQ3VycmVudCkge1xuICAgICAgLy8gQ29udGV4dCBpZGVudGl0eVxuICAgICAgaHVuay5saW5lcy5wdXNoKG1pbmVDdXJyZW50KTtcbiAgICAgIG1pbmUuaW5kZXgrKztcbiAgICAgIHRoZWlyLmluZGV4Kys7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIENvbnRleHQgbWlzbWF0Y2hcbiAgICAgIGNvbmZsaWN0KGh1bmssIGNvbGxlY3RDaGFuZ2UobWluZSksIGNvbGxlY3RDaGFuZ2UodGhlaXIpKTtcbiAgICB9XG4gIH1cblxuICAvLyBOb3cgcHVzaCBhbnl0aGluZyB0aGF0IG1heSBiZSByZW1haW5pbmdcbiAgaW5zZXJ0VHJhaWxpbmcoaHVuaywgbWluZSk7XG4gIGluc2VydFRyYWlsaW5nKGh1bmssIHRoZWlyKTtcblxuICBjYWxjTGluZUNvdW50KGh1bmspO1xufVxuXG5mdW5jdGlvbiBtdXR1YWxDaGFuZ2UoaHVuaywgbWluZSwgdGhlaXIpIHtcbiAgbGV0IG15Q2hhbmdlcyA9IGNvbGxlY3RDaGFuZ2UobWluZSksXG4gICAgICB0aGVpckNoYW5nZXMgPSBjb2xsZWN0Q2hhbmdlKHRoZWlyKTtcblxuICBpZiAoYWxsUmVtb3ZlcyhteUNoYW5nZXMpICYmIGFsbFJlbW92ZXModGhlaXJDaGFuZ2VzKSkge1xuICAgIC8vIFNwZWNpYWwgY2FzZSBmb3IgcmVtb3ZlIGNoYW5nZXMgdGhhdCBhcmUgc3VwZXJzZXRzIG9mIG9uZSBhbm90aGVyXG4gICAgaWYgKGFycmF5U3RhcnRzV2l0aChteUNoYW5nZXMsIHRoZWlyQ2hhbmdlcylcbiAgICAgICAgJiYgc2tpcFJlbW92ZVN1cGVyc2V0KHRoZWlyLCBteUNoYW5nZXMsIG15Q2hhbmdlcy5sZW5ndGggLSB0aGVpckNoYW5nZXMubGVuZ3RoKSkge1xuICAgICAgaHVuay5saW5lcy5wdXNoKC4uLiBteUNoYW5nZXMpO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSBpZiAoYXJyYXlTdGFydHNXaXRoKHRoZWlyQ2hhbmdlcywgbXlDaGFuZ2VzKVxuICAgICAgICAmJiBza2lwUmVtb3ZlU3VwZXJzZXQobWluZSwgdGhlaXJDaGFuZ2VzLCB0aGVpckNoYW5nZXMubGVuZ3RoIC0gbXlDaGFuZ2VzLmxlbmd0aCkpIHtcbiAgICAgIGh1bmsubGluZXMucHVzaCguLi4gdGhlaXJDaGFuZ2VzKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH0gZWxzZSBpZiAoYXJyYXlFcXVhbChteUNoYW5nZXMsIHRoZWlyQ2hhbmdlcykpIHtcbiAgICBodW5rLmxpbmVzLnB1c2goLi4uIG15Q2hhbmdlcyk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uZmxpY3QoaHVuaywgbXlDaGFuZ2VzLCB0aGVpckNoYW5nZXMpO1xufVxuXG5mdW5jdGlvbiByZW1vdmFsKGh1bmssIG1pbmUsIHRoZWlyLCBzd2FwKSB7XG4gIGxldCBteUNoYW5nZXMgPSBjb2xsZWN0Q2hhbmdlKG1pbmUpLFxuICAgICAgdGhlaXJDaGFuZ2VzID0gY29sbGVjdENvbnRleHQodGhlaXIsIG15Q2hhbmdlcyk7XG4gIGlmICh0aGVpckNoYW5nZXMubWVyZ2VkKSB7XG4gICAgaHVuay5saW5lcy5wdXNoKC4uLiB0aGVpckNoYW5nZXMubWVyZ2VkKTtcbiAgfSBlbHNlIHtcbiAgICBjb25mbGljdChodW5rLCBzd2FwID8gdGhlaXJDaGFuZ2VzIDogbXlDaGFuZ2VzLCBzd2FwID8gbXlDaGFuZ2VzIDogdGhlaXJDaGFuZ2VzKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjb25mbGljdChodW5rLCBtaW5lLCB0aGVpcikge1xuICBodW5rLmNvbmZsaWN0ID0gdHJ1ZTtcbiAgaHVuay5saW5lcy5wdXNoKHtcbiAgICBjb25mbGljdDogdHJ1ZSxcbiAgICBtaW5lOiBtaW5lLFxuICAgIHRoZWlyczogdGhlaXJcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGluc2VydExlYWRpbmcoaHVuaywgaW5zZXJ0LCB0aGVpcikge1xuICB3aGlsZSAoaW5zZXJ0Lm9mZnNldCA8IHRoZWlyLm9mZnNldCAmJiBpbnNlcnQuaW5kZXggPCBpbnNlcnQubGluZXMubGVuZ3RoKSB7XG4gICAgbGV0IGxpbmUgPSBpbnNlcnQubGluZXNbaW5zZXJ0LmluZGV4KytdO1xuICAgIGh1bmsubGluZXMucHVzaChsaW5lKTtcbiAgICBpbnNlcnQub2Zmc2V0Kys7XG4gIH1cbn1cbmZ1bmN0aW9uIGluc2VydFRyYWlsaW5nKGh1bmssIGluc2VydCkge1xuICB3aGlsZSAoaW5zZXJ0LmluZGV4IDwgaW5zZXJ0LmxpbmVzLmxlbmd0aCkge1xuICAgIGxldCBsaW5lID0gaW5zZXJ0LmxpbmVzW2luc2VydC5pbmRleCsrXTtcbiAgICBodW5rLmxpbmVzLnB1c2gobGluZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gY29sbGVjdENoYW5nZShzdGF0ZSkge1xuICBsZXQgcmV0ID0gW10sXG4gICAgICBvcGVyYXRpb24gPSBzdGF0ZS5saW5lc1tzdGF0ZS5pbmRleF1bMF07XG4gIHdoaWxlIChzdGF0ZS5pbmRleCA8IHN0YXRlLmxpbmVzLmxlbmd0aCkge1xuICAgIGxldCBsaW5lID0gc3RhdGUubGluZXNbc3RhdGUuaW5kZXhdO1xuXG4gICAgLy8gR3JvdXAgYWRkaXRpb25zIHRoYXQgYXJlIGltbWVkaWF0ZWx5IGFmdGVyIHN1YnRyYWN0aW9ucyBhbmQgdHJlYXQgdGhlbSBhcyBvbmUgXCJhdG9taWNcIiBtb2RpZnkgY2hhbmdlLlxuICAgIGlmIChvcGVyYXRpb24gPT09ICctJyAmJiBsaW5lWzBdID09PSAnKycpIHtcbiAgICAgIG9wZXJhdGlvbiA9ICcrJztcbiAgICB9XG5cbiAgICBpZiAob3BlcmF0aW9uID09PSBsaW5lWzBdKSB7XG4gICAgICByZXQucHVzaChsaW5lKTtcbiAgICAgIHN0YXRlLmluZGV4Kys7XG4gICAgfSBlbHNlIHtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXQ7XG59XG5mdW5jdGlvbiBjb2xsZWN0Q29udGV4dChzdGF0ZSwgbWF0Y2hDaGFuZ2VzKSB7XG4gIGxldCBjaGFuZ2VzID0gW10sXG4gICAgICBtZXJnZWQgPSBbXSxcbiAgICAgIG1hdGNoSW5kZXggPSAwLFxuICAgICAgY29udGV4dENoYW5nZXMgPSBmYWxzZSxcbiAgICAgIGNvbmZsaWN0ZWQgPSBmYWxzZTtcbiAgd2hpbGUgKG1hdGNoSW5kZXggPCBtYXRjaENoYW5nZXMubGVuZ3RoXG4gICAgICAgICYmIHN0YXRlLmluZGV4IDwgc3RhdGUubGluZXMubGVuZ3RoKSB7XG4gICAgbGV0IGNoYW5nZSA9IHN0YXRlLmxpbmVzW3N0YXRlLmluZGV4XSxcbiAgICAgICAgbWF0Y2ggPSBtYXRjaENoYW5nZXNbbWF0Y2hJbmRleF07XG5cbiAgICAvLyBPbmNlIHdlJ3ZlIGhpdCBvdXIgYWRkLCB0aGVuIHdlIGFyZSBkb25lXG4gICAgaWYgKG1hdGNoWzBdID09PSAnKycpIHtcbiAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGNvbnRleHRDaGFuZ2VzID0gY29udGV4dENoYW5nZXMgfHwgY2hhbmdlWzBdICE9PSAnICc7XG5cbiAgICBtZXJnZWQucHVzaChtYXRjaCk7XG4gICAgbWF0Y2hJbmRleCsrO1xuXG4gICAgLy8gQ29uc3VtZSBhbnkgYWRkaXRpb25zIGluIHRoZSBvdGhlciBibG9jayBhcyBhIGNvbmZsaWN0IHRvIGF0dGVtcHRcbiAgICAvLyB0byBwdWxsIGluIHRoZSByZW1haW5pbmcgY29udGV4dCBhZnRlciB0aGlzXG4gICAgaWYgKGNoYW5nZVswXSA9PT0gJysnKSB7XG4gICAgICBjb25mbGljdGVkID0gdHJ1ZTtcblxuICAgICAgd2hpbGUgKGNoYW5nZVswXSA9PT0gJysnKSB7XG4gICAgICAgIGNoYW5nZXMucHVzaChjaGFuZ2UpO1xuICAgICAgICBjaGFuZ2UgPSBzdGF0ZS5saW5lc1srK3N0YXRlLmluZGV4XTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobWF0Y2guc3Vic3RyKDEpID09PSBjaGFuZ2Uuc3Vic3RyKDEpKSB7XG4gICAgICBjaGFuZ2VzLnB1c2goY2hhbmdlKTtcbiAgICAgIHN0YXRlLmluZGV4Kys7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbmZsaWN0ZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGlmICgobWF0Y2hDaGFuZ2VzW21hdGNoSW5kZXhdIHx8ICcnKVswXSA9PT0gJysnXG4gICAgICAmJiBjb250ZXh0Q2hhbmdlcykge1xuICAgIGNvbmZsaWN0ZWQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKGNvbmZsaWN0ZWQpIHtcbiAgICByZXR1cm4gY2hhbmdlcztcbiAgfVxuXG4gIHdoaWxlIChtYXRjaEluZGV4IDwgbWF0Y2hDaGFuZ2VzLmxlbmd0aCkge1xuICAgIG1lcmdlZC5wdXNoKG1hdGNoQ2hhbmdlc1ttYXRjaEluZGV4KytdKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgbWVyZ2VkLFxuICAgIGNoYW5nZXNcbiAgfTtcbn1cblxuZnVuY3Rpb24gYWxsUmVtb3ZlcyhjaGFuZ2VzKSB7XG4gIHJldHVybiBjaGFuZ2VzLnJlZHVjZShmdW5jdGlvbihwcmV2LCBjaGFuZ2UpIHtcbiAgICByZXR1cm4gcHJldiAmJiBjaGFuZ2VbMF0gPT09ICctJztcbiAgfSwgdHJ1ZSk7XG59XG5mdW5jdGlvbiBza2lwUmVtb3ZlU3VwZXJzZXQoc3RhdGUsIHJlbW92ZUNoYW5nZXMsIGRlbHRhKSB7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgZGVsdGE7IGkrKykge1xuICAgIGxldCBjaGFuZ2VDb250ZW50ID0gcmVtb3ZlQ2hhbmdlc1tyZW1vdmVDaGFuZ2VzLmxlbmd0aCAtIGRlbHRhICsgaV0uc3Vic3RyKDEpO1xuICAgIGlmIChzdGF0ZS5saW5lc1tzdGF0ZS5pbmRleCArIGldICE9PSAnICcgKyBjaGFuZ2VDb250ZW50KSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgc3RhdGUuaW5kZXggKz0gZGVsdGE7XG4gIHJldHVybiB0cnVlO1xufVxuXG5mdW5jdGlvbiBjYWxjT2xkTmV3TGluZUNvdW50KGxpbmVzKSB7XG4gIGxldCBvbGRMaW5lcyA9IDA7XG4gIGxldCBuZXdMaW5lcyA9IDA7XG5cbiAgbGluZXMuZm9yRWFjaChmdW5jdGlvbihsaW5lKSB7XG4gICAgaWYgKHR5cGVvZiBsaW5lICE9PSAnc3RyaW5nJykge1xuICAgICAgbGV0IG15Q291bnQgPSBjYWxjT2xkTmV3TGluZUNvdW50KGxpbmUubWluZSk7XG4gICAgICBsZXQgdGhlaXJDb3VudCA9IGNhbGNPbGROZXdMaW5lQ291bnQobGluZS50aGVpcnMpO1xuXG4gICAgICBpZiAob2xkTGluZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAobXlDb3VudC5vbGRMaW5lcyA9PT0gdGhlaXJDb3VudC5vbGRMaW5lcykge1xuICAgICAgICAgIG9sZExpbmVzICs9IG15Q291bnQub2xkTGluZXM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb2xkTGluZXMgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKG5ld0xpbmVzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaWYgKG15Q291bnQubmV3TGluZXMgPT09IHRoZWlyQ291bnQubmV3TGluZXMpIHtcbiAgICAgICAgICBuZXdMaW5lcyArPSBteUNvdW50Lm5ld0xpbmVzO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5ld0xpbmVzID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChuZXdMaW5lcyAhPT0gdW5kZWZpbmVkICYmIChsaW5lWzBdID09PSAnKycgfHwgbGluZVswXSA9PT0gJyAnKSkge1xuICAgICAgICBuZXdMaW5lcysrO1xuICAgICAgfVxuICAgICAgaWYgKG9sZExpbmVzICE9PSB1bmRlZmluZWQgJiYgKGxpbmVbMF0gPT09ICctJyB8fCBsaW5lWzBdID09PSAnICcpKSB7XG4gICAgICAgIG9sZExpbmVzKys7XG4gICAgICB9XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4ge29sZExpbmVzLCBuZXdMaW5lc307XG59XG4iXX0=