three-nebula 10.0.2 → 11.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/.claude/rules/no-coauthor.md +4 -0
  2. package/CHANGELOG.md +23 -0
  3. package/build/cjs/behaviour/Alpha.js +2 -2
  4. package/build/cjs/behaviour/Attraction.js +2 -2
  5. package/build/cjs/behaviour/Behaviour.js +1 -1
  6. package/build/cjs/behaviour/Collision.js +2 -2
  7. package/build/cjs/behaviour/Color.js +2 -2
  8. package/build/cjs/behaviour/CrossZone.js +8 -4
  9. package/build/cjs/behaviour/Force.js +2 -2
  10. package/build/cjs/behaviour/Gravity.js +2 -2
  11. package/build/cjs/behaviour/RandomDrift.js +2 -2
  12. package/build/cjs/behaviour/Repulsion.js +2 -2
  13. package/build/cjs/behaviour/Rotate.js +5 -5
  14. package/build/cjs/behaviour/Scale.js +2 -2
  15. package/build/cjs/behaviour/Spring.js +2 -2
  16. package/build/cjs/constants/index.js +1 -1
  17. package/build/cjs/core/Particle.js +1 -1
  18. package/build/cjs/core/Pool.js +1 -1
  19. package/build/cjs/core/System.js +8 -4
  20. package/build/cjs/core/constants.js +2 -2
  21. package/build/cjs/core/fromJSON.js +6 -2
  22. package/build/cjs/core/fromJSONAsync.js +8 -4
  23. package/build/cjs/core/three/Euler.js +1 -1
  24. package/build/cjs/core/three/Math.js +1 -1
  25. package/build/cjs/core/three/Matrix4.js +1 -1
  26. package/build/cjs/core/three/Quaternion.js +1 -1
  27. package/build/cjs/core/three/Vector3.js +1 -1
  28. package/build/cjs/debug/Debug.js +1 -1
  29. package/build/cjs/debug/log.js +1 -1
  30. package/build/cjs/ease/index.js +1 -1
  31. package/build/cjs/emitter/Emitter.js +17 -6
  32. package/build/cjs/emitter/FollowEmitter.js +2 -2
  33. package/build/cjs/events/EventDispatcher.js +3 -3
  34. package/build/cjs/initializer/Body.js +2 -2
  35. package/build/cjs/initializer/BodySprite.js +3 -3
  36. package/build/cjs/initializer/Initializer.js +1 -1
  37. package/build/cjs/initializer/InitializerUtil.js +1 -1
  38. package/build/cjs/initializer/Life.js +2 -2
  39. package/build/cjs/initializer/Mass.js +2 -2
  40. package/build/cjs/initializer/Position.js +8 -4
  41. package/build/cjs/initializer/Radius.js +2 -2
  42. package/build/cjs/initializer/Rate.js +2 -2
  43. package/build/cjs/initializer/Rotation.js +95 -0
  44. package/build/cjs/initializer/Texture.js +3 -3
  45. package/build/cjs/initializer/Velocity/PolarVelocity.js +2 -2
  46. package/build/cjs/initializer/Velocity/RadialVelocity.js +2 -2
  47. package/build/cjs/initializer/Velocity/VectorVelocity.js +2 -2
  48. package/build/cjs/initializer/Velocity/Velocity.js +2 -2
  49. package/build/cjs/initializer/constants.js +1 -1
  50. package/build/cjs/initializer/index.js +9 -1
  51. package/build/cjs/initializer/types.js +4 -2
  52. package/build/cjs/math/ArraySpan.js +2 -2
  53. package/build/cjs/math/Box.js +1 -1
  54. package/build/cjs/math/ColorSpan.js +2 -2
  55. package/build/cjs/math/MathUtils.js +1 -1
  56. package/build/cjs/math/Polar3D.js +1 -1
  57. package/build/cjs/math/Span.js +1 -1
  58. package/build/cjs/math/Vector3D.js +1 -1
  59. package/build/cjs/math/constants.js +1 -1
  60. package/build/cjs/math/index.js +5 -1
  61. package/build/cjs/math/integration.js +1 -1
  62. package/build/cjs/renderer/BaseRenderer.js +1 -1
  63. package/build/cjs/renderer/CustomRenderer.js +1 -1
  64. package/build/cjs/renderer/GPURenderer/Desktop/index.js +25 -4
  65. package/build/cjs/renderer/GPURenderer/Desktop/shaders/fragmentShader.js +2 -2
  66. package/build/cjs/renderer/GPURenderer/Desktop/shaders/vertexShader.js +2 -2
  67. package/build/cjs/renderer/GPURenderer/Mobile/index.js +25 -4
  68. package/build/cjs/renderer/GPURenderer/Mobile/shaders/fragmentShader.js +2 -2
  69. package/build/cjs/renderer/GPURenderer/Mobile/shaders/vertexShader.js +2 -2
  70. package/build/cjs/renderer/GPURenderer/common/ParticleBuffer/constants.js +9 -4
  71. package/build/cjs/renderer/GPURenderer/common/ParticleBuffer/index.js +1 -1
  72. package/build/cjs/renderer/GPURenderer/common/TextureAtlas/index.js +1 -1
  73. package/build/cjs/renderer/GPURenderer/common/stores/Target.js +3 -1
  74. package/build/cjs/renderer/GPURenderer/common/stores/UniqueList.js +1 -1
  75. package/build/cjs/renderer/GPURenderer/index.js +2 -2
  76. package/build/cjs/renderer/MeshRenderer.js +9 -9
  77. package/build/cjs/renderer/SpriteRenderer.js +7 -2
  78. package/build/cjs/utils/index.js +1 -1
  79. package/build/cjs/utils/uid.js +3 -5
  80. package/build/cjs/zone/BoxZone.js +2 -2
  81. package/build/cjs/zone/LineZone.js +2 -2
  82. package/build/cjs/zone/MeshZone.js +2 -2
  83. package/build/cjs/zone/PointZone.js +6 -4
  84. package/build/cjs/zone/ScreenZone.js +2 -2
  85. package/build/cjs/zone/SphereZone.js +6 -4
  86. package/build/cjs/zone/Zone.js +1 -1
  87. package/build/esm/behaviour/Alpha.js +1 -1
  88. package/build/esm/behaviour/Attraction.js +1 -1
  89. package/build/esm/behaviour/Behaviour.js +1 -1
  90. package/build/esm/behaviour/Collision.js +1 -1
  91. package/build/esm/behaviour/Color.js +1 -1
  92. package/build/esm/behaviour/CrossZone.js +1 -1
  93. package/build/esm/behaviour/Force.js +1 -1
  94. package/build/esm/behaviour/Gravity.js +1 -1
  95. package/build/esm/behaviour/RandomDrift.js +1 -1
  96. package/build/esm/behaviour/Repulsion.js +1 -1
  97. package/build/esm/behaviour/Rotate.js +4 -4
  98. package/build/esm/behaviour/Scale.js +1 -1
  99. package/build/esm/behaviour/Spring.js +1 -1
  100. package/build/esm/constants/index.js +1 -1
  101. package/build/esm/core/Particle.js +1 -1
  102. package/build/esm/core/Pool.js +1 -1
  103. package/build/esm/core/System.js +2 -2
  104. package/build/esm/core/constants.js +3 -3
  105. package/build/esm/core/fromJSON.js +1 -1
  106. package/build/esm/core/fromJSONAsync.js +2 -2
  107. package/build/esm/core/three/Euler.js +1 -1
  108. package/build/esm/core/three/Math.js +1 -1
  109. package/build/esm/core/three/Matrix4.js +1 -1
  110. package/build/esm/core/three/Quaternion.js +1 -1
  111. package/build/esm/core/three/Vector3.js +1 -1
  112. package/build/esm/debug/Debug.js +1 -1
  113. package/build/esm/debug/log.js +1 -1
  114. package/build/esm/ease/index.js +1 -1
  115. package/build/esm/emitter/Emitter.js +11 -4
  116. package/build/esm/emitter/FollowEmitter.js +1 -1
  117. package/build/esm/events/EventDispatcher.js +3 -3
  118. package/build/esm/initializer/Body.js +1 -1
  119. package/build/esm/initializer/BodySprite.js +2 -2
  120. package/build/esm/initializer/Initializer.js +1 -1
  121. package/build/esm/initializer/InitializerUtil.js +1 -1
  122. package/build/esm/initializer/Life.js +1 -1
  123. package/build/esm/initializer/Mass.js +1 -1
  124. package/build/esm/initializer/Position.js +3 -2
  125. package/build/esm/initializer/Radius.js +1 -1
  126. package/build/esm/initializer/Rate.js +1 -1
  127. package/build/esm/initializer/Rotation.js +54 -0
  128. package/build/esm/initializer/Texture.js +2 -2
  129. package/build/esm/initializer/Velocity/PolarVelocity.js +1 -1
  130. package/build/esm/initializer/Velocity/RadialVelocity.js +1 -1
  131. package/build/esm/initializer/Velocity/VectorVelocity.js +1 -1
  132. package/build/esm/initializer/Velocity/Velocity.js +1 -1
  133. package/build/esm/initializer/constants.js +1 -1
  134. package/build/esm/initializer/index.js +2 -1
  135. package/build/esm/initializer/types.js +2 -1
  136. package/build/esm/math/ArraySpan.js +1 -1
  137. package/build/esm/math/Box.js +1 -1
  138. package/build/esm/math/ColorSpan.js +1 -1
  139. package/build/esm/math/MathUtils.js +1 -1
  140. package/build/esm/math/Polar3D.js +1 -1
  141. package/build/esm/math/Span.js +1 -1
  142. package/build/esm/math/constants.js +1 -1
  143. package/build/esm/math/integration.js +1 -1
  144. package/build/esm/renderer/BaseRenderer.js +1 -1
  145. package/build/esm/renderer/GPURenderer/Desktop/index.js +29 -3
  146. package/build/esm/renderer/GPURenderer/Desktop/shaders/fragmentShader.js +8 -1
  147. package/build/esm/renderer/GPURenderer/Desktop/shaders/vertexShader.js +4 -1
  148. package/build/esm/renderer/GPURenderer/Mobile/index.js +29 -3
  149. package/build/esm/renderer/GPURenderer/Mobile/shaders/fragmentShader.js +8 -1
  150. package/build/esm/renderer/GPURenderer/Mobile/shaders/vertexShader.js +4 -1
  151. package/build/esm/renderer/GPURenderer/common/ParticleBuffer/constants.js +6 -3
  152. package/build/esm/renderer/GPURenderer/common/ParticleBuffer/index.js +1 -1
  153. package/build/esm/renderer/GPURenderer/common/TextureAtlas/index.js +1 -1
  154. package/build/esm/renderer/GPURenderer/common/stores/Target.js +3 -1
  155. package/build/esm/renderer/GPURenderer/common/stores/UniqueList.js +1 -1
  156. package/build/esm/renderer/GPURenderer/index.js +1 -1
  157. package/build/esm/renderer/MeshRenderer.js +7 -8
  158. package/build/esm/renderer/SpriteRenderer.js +5 -1
  159. package/build/esm/utils/index.js +1 -1
  160. package/build/esm/utils/uid.js +2 -2
  161. package/build/esm/zone/BoxZone.js +1 -1
  162. package/build/esm/zone/LineZone.js +1 -1
  163. package/build/esm/zone/MeshZone.js +1 -1
  164. package/build/esm/zone/PointZone.js +5 -3
  165. package/build/esm/zone/ScreenZone.js +1 -1
  166. package/build/esm/zone/SphereZone.js +5 -3
  167. package/build/esm/zone/Zone.js +1 -1
  168. package/build/three-nebula.js +1 -1
  169. package/build/three-nebula.js.map +1 -1
  170. package/package.json +31 -31
@@ -742,4 +742,4 @@ Object.assign(Matrix4.prototype, {
742
742
  return array;
743
743
  }
744
744
  });
745
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb3JlL3RocmVlL01hdHJpeDQuanMiXSwibmFtZXMiOlsiTWF0cml4NCIsImVsZW1lbnRzIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiY29uc29sZSIsImVycm9yIiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwiaXNNYXRyaXg0Iiwic2V0IiwibjExIiwibjEyIiwibjEzIiwibjE0IiwibjIxIiwibjIyIiwibjIzIiwibjI0IiwibjMxIiwibjMyIiwibjMzIiwibjM0IiwibjQxIiwibjQyIiwibjQzIiwibjQ0IiwidGUiLCJpZGVudGl0eSIsImNsb25lIiwiZnJvbUFycmF5IiwiY29weSIsIm0iLCJtZSIsImNvcHlQb3NpdGlvbiIsImV4dHJhY3RCYXNpcyIsInhBeGlzIiwieUF4aXMiLCJ6QXhpcyIsInNldEZyb21NYXRyaXhDb2x1bW4iLCJtYWtlQmFzaXMiLCJ4IiwieSIsInoiLCJleHRyYWN0Um90YXRpb24iLCJ2MSIsIlZlY3RvcjMiLCJzY2FsZVgiLCJzY2FsZVkiLCJzY2FsZVoiLCJtYWtlUm90YXRpb25Gcm9tRXVsZXIiLCJldWxlciIsImlzRXVsZXIiLCJhIiwiTWF0aCIsImNvcyIsImIiLCJzaW4iLCJjIiwiZCIsImUiLCJmIiwib3JkZXIiLCJhZSIsImFmIiwiYmUiLCJiZiIsImNlIiwiY2YiLCJkZSIsImRmIiwiYWMiLCJhZCIsImJjIiwiYmQiLCJtYWtlUm90YXRpb25Gcm9tUXVhdGVybmlvbiIsInplcm8iLCJvbmUiLCJxIiwiY29tcG9zZSIsImxvb2tBdCIsImV5ZSIsInRhcmdldCIsInVwIiwic3ViVmVjdG9ycyIsImxlbmd0aFNxIiwibm9ybWFsaXplIiwiY3Jvc3NWZWN0b3JzIiwiYWJzIiwibXVsdGlwbHkiLCJuIiwidW5kZWZpbmVkIiwid2FybiIsIm11bHRpcGx5TWF0cmljZXMiLCJwcmVtdWx0aXBseSIsImExMSIsImExMiIsImExMyIsImExNCIsImEyMSIsImEyMiIsImEyMyIsImEyNCIsImEzMSIsImEzMiIsImEzMyIsImEzNCIsImE0MSIsImE0MiIsImE0MyIsImE0NCIsImIxMSIsImIxMiIsImIxMyIsImIxNCIsImIyMSIsImIyMiIsImIyMyIsImIyNCIsImIzMSIsImIzMiIsImIzMyIsImIzNCIsImI0MSIsImI0MiIsImI0MyIsImI0NCIsIm11bHRpcGx5U2NhbGFyIiwicyIsImFwcGx5VG9CdWZmZXJBdHRyaWJ1dGUiLCJhdHRyaWJ1dGUiLCJpIiwibCIsImNvdW50IiwiZ2V0WCIsImdldFkiLCJnZXRaIiwiYXBwbHlNYXRyaXg0Iiwic2V0WFlaIiwiZGV0ZXJtaW5hbnQiLCJ0cmFuc3Bvc2UiLCJ0bXAiLCJzZXRQb3NpdGlvbiIsImlzVmVjdG9yMyIsImdldEludmVyc2UiLCJ0aHJvd09uRGVnZW5lcmF0ZSIsInQxMSIsInQxMiIsInQxMyIsInQxNCIsImRldCIsIm1zZyIsIkVycm9yIiwiZGV0SW52Iiwic2NhbGUiLCJ2IiwiZ2V0TWF4U2NhbGVPbkF4aXMiLCJzY2FsZVhTcSIsInNjYWxlWVNxIiwic2NhbGVaU3EiLCJzcXJ0IiwibWF4IiwibWFrZVRyYW5zbGF0aW9uIiwibWFrZVJvdGF0aW9uWCIsInRoZXRhIiwibWFrZVJvdGF0aW9uWSIsIm1ha2VSb3RhdGlvbloiLCJtYWtlUm90YXRpb25BeGlzIiwiYXhpcyIsImFuZ2xlIiwidCIsInR4IiwidHkiLCJtYWtlU2NhbGUiLCJtYWtlU2hlYXIiLCJwb3NpdGlvbiIsInF1YXRlcm5pb24iLCJfeCIsIl95IiwiX3oiLCJ3IiwiX3ciLCJ4MiIsInkyIiwiejIiLCJ4eCIsInh5IiwieHoiLCJ5eSIsInl6IiwienoiLCJ3eCIsInd5Iiwid3oiLCJzeCIsInN5Iiwic3oiLCJkZWNvbXBvc2UiLCJ2ZWN0b3IiLCJtYXRyaXgiLCJpbnZTWCIsImludlNZIiwiaW52U1oiLCJzZXRGcm9tUm90YXRpb25NYXRyaXgiLCJtYWtlUGVyc3BlY3RpdmUiLCJsZWZ0IiwicmlnaHQiLCJ0b3AiLCJib3R0b20iLCJuZWFyIiwiZmFyIiwibWFrZU9ydGhvZ3JhcGhpYyIsImgiLCJwIiwiZXF1YWxzIiwiYXJyYXkiLCJvZmZzZXQiLCJ0b0FycmF5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBRUE7Ozs7Ozs7Ozs7OztBQWFBLFNBQVNBLE9BQVQsR0FBbUI7QUFFbEIsT0FBS0MsUUFBTCxHQUFnQixDQUVmLENBRmUsRUFFWixDQUZZLEVBRVQsQ0FGUyxFQUVOLENBRk0sRUFHZixDQUhlLEVBR1osQ0FIWSxFQUdULENBSFMsRUFHTixDQUhNLEVBSWYsQ0FKZSxFQUlaLENBSlksRUFJVCxDQUpTLEVBSU4sQ0FKTSxFQUtmLENBTGUsRUFLWixDQUxZLEVBS1QsQ0FMUyxFQUtOLENBTE0sQ0FBaEI7O0FBU0EsTUFBS0MsU0FBUyxDQUFDQyxNQUFWLEdBQW1CLENBQXhCLEVBQTRCO0FBRTNCQyxJQUFBQSxPQUFPLENBQUNDLEtBQVIsQ0FBZSwrRUFBZjtBQUVBO0FBRUQ7O0FBRURDLE1BQU0sQ0FBQ0MsTUFBUCxDQUFlUCxPQUFPLENBQUNRLFNBQXZCLEVBQWtDO0FBRWpDQyxFQUFBQSxTQUFTLEVBQUUsSUFGc0I7QUFJakNDLEVBQUFBLEdBQUcsRUFBRSxhQUFXQyxHQUFYLEVBQWdCQyxHQUFoQixFQUFxQkMsR0FBckIsRUFBMEJDLEdBQTFCLEVBQStCQyxHQUEvQixFQUFvQ0MsR0FBcEMsRUFBeUNDLEdBQXpDLEVBQThDQyxHQUE5QyxFQUFtREMsR0FBbkQsRUFBd0RDLEdBQXhELEVBQTZEQyxHQUE3RCxFQUFrRUMsR0FBbEUsRUFBdUVDLEdBQXZFLEVBQTRFQyxHQUE1RSxFQUFpRkMsR0FBakYsRUFBc0ZDLEdBQXRGLEVBQTRGO0FBRWhHLFFBQUlDLEVBQUUsR0FBRyxLQUFLMUIsUUFBZDtBQUVBMEIsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVaEIsR0FBVjtBQUFlZ0IsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVZixHQUFWO0FBQWVlLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVWQsR0FBVjtBQUFlYyxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdiLEdBQVg7QUFDN0NhLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVVosR0FBVjtBQUFlWSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVYLEdBQVY7QUFBZVcsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVVixHQUFWO0FBQWVVLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV1QsR0FBWDtBQUM3Q1MsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVUixHQUFWO0FBQWVRLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVVAsR0FBVjtBQUFlTyxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdOLEdBQVg7QUFBZ0JNLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV0wsR0FBWDtBQUM5Q0ssSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVSixHQUFWO0FBQWVJLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVUgsR0FBVjtBQUFlRyxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdGLEdBQVg7QUFBZ0JFLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV0QsR0FBWDtBQUU5QyxXQUFPLElBQVA7QUFFQSxHQWZnQztBQWlCakNFLEVBQUFBLFFBQVEsRUFBRSxvQkFBWTtBQUVyQixTQUFLbEIsR0FBTCxDQUVDLENBRkQsRUFFSSxDQUZKLEVBRU8sQ0FGUCxFQUVVLENBRlYsRUFHQyxDQUhELEVBR0ksQ0FISixFQUdPLENBSFAsRUFHVSxDQUhWLEVBSUMsQ0FKRCxFQUlJLENBSkosRUFJTyxDQUpQLEVBSVUsQ0FKVixFQUtDLENBTEQsRUFLSSxDQUxKLEVBS08sQ0FMUCxFQUtVLENBTFY7QUFTQSxXQUFPLElBQVA7QUFFQSxHQTlCZ0M7QUFnQ2pDbUIsRUFBQUEsS0FBSyxFQUFFLGlCQUFZO0FBRWxCLFdBQU8sSUFBSTdCLE9BQUosR0FBYzhCLFNBQWQsQ0FBeUIsS0FBSzdCLFFBQTlCLENBQVA7QUFFQSxHQXBDZ0M7QUFzQ2pDOEIsRUFBQUEsSUFBSSxFQUFFLGNBQVdDLENBQVgsRUFBZTtBQUVwQixRQUFJTCxFQUFFLEdBQUcsS0FBSzFCLFFBQWQ7QUFDQSxRQUFJZ0MsRUFBRSxHQUFHRCxDQUFDLENBQUMvQixRQUFYO0FBRUEwQixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVNLEVBQUUsQ0FBRSxDQUFGLENBQVo7QUFBbUJOLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVU0sRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFtQk4sSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVTSxFQUFFLENBQUUsQ0FBRixDQUFaO0FBQW1CTixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVNLEVBQUUsQ0FBRSxDQUFGLENBQVo7QUFDekROLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVU0sRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFtQk4sSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVTSxFQUFFLENBQUUsQ0FBRixDQUFaO0FBQW1CTixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVNLEVBQUUsQ0FBRSxDQUFGLENBQVo7QUFBbUJOLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVU0sRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUN6RE4sSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVTSxFQUFFLENBQUUsQ0FBRixDQUFaO0FBQW1CTixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVNLEVBQUUsQ0FBRSxDQUFGLENBQVo7QUFBbUJOLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV00sRUFBRSxDQUFFLEVBQUYsQ0FBYjtBQUFxQk4sSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXTSxFQUFFLENBQUUsRUFBRixDQUFiO0FBQzNETixJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdNLEVBQUUsQ0FBRSxFQUFGLENBQWI7QUFBcUJOLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV00sRUFBRSxDQUFFLEVBQUYsQ0FBYjtBQUFxQk4sSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXTSxFQUFFLENBQUUsRUFBRixDQUFiO0FBQXFCTixJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdNLEVBQUUsQ0FBRSxFQUFGLENBQWI7QUFFL0QsV0FBTyxJQUFQO0FBRUEsR0FsRGdDO0FBb0RqQ0MsRUFBQUEsWUFBWSxFQUFFLHNCQUFXRixDQUFYLEVBQWU7QUFFNUIsUUFBSUwsRUFBRSxHQUFHLEtBQUsxQixRQUFkO0FBQUEsUUFBd0JnQyxFQUFFLEdBQUdELENBQUMsQ0FBQy9CLFFBQS9CO0FBRUEwQixJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdNLEVBQUUsQ0FBRSxFQUFGLENBQWI7QUFDQU4sSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXTSxFQUFFLENBQUUsRUFBRixDQUFiO0FBQ0FOLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV00sRUFBRSxDQUFFLEVBQUYsQ0FBYjtBQUVBLFdBQU8sSUFBUDtBQUVBLEdBOURnQztBQWdFakNFLEVBQUFBLFlBQVksRUFBRSxzQkFBV0MsS0FBWCxFQUFrQkMsS0FBbEIsRUFBeUJDLEtBQXpCLEVBQWlDO0FBRTlDRixJQUFBQSxLQUFLLENBQUNHLG1CQUFOLENBQTJCLElBQTNCLEVBQWlDLENBQWpDO0FBQ0FGLElBQUFBLEtBQUssQ0FBQ0UsbUJBQU4sQ0FBMkIsSUFBM0IsRUFBaUMsQ0FBakM7QUFDQUQsSUFBQUEsS0FBSyxDQUFDQyxtQkFBTixDQUEyQixJQUEzQixFQUFpQyxDQUFqQztBQUVBLFdBQU8sSUFBUDtBQUVBLEdBeEVnQztBQTBFakNDLEVBQUFBLFNBQVMsRUFBRSxtQkFBV0osS0FBWCxFQUFrQkMsS0FBbEIsRUFBeUJDLEtBQXpCLEVBQWlDO0FBRTNDLFNBQUs1QixHQUFMLENBQ0MwQixLQUFLLENBQUNLLENBRFAsRUFDVUosS0FBSyxDQUFDSSxDQURoQixFQUNtQkgsS0FBSyxDQUFDRyxDQUR6QixFQUM0QixDQUQ1QixFQUVDTCxLQUFLLENBQUNNLENBRlAsRUFFVUwsS0FBSyxDQUFDSyxDQUZoQixFQUVtQkosS0FBSyxDQUFDSSxDQUZ6QixFQUU0QixDQUY1QixFQUdDTixLQUFLLENBQUNPLENBSFAsRUFHVU4sS0FBSyxDQUFDTSxDQUhoQixFQUdtQkwsS0FBSyxDQUFDSyxDQUh6QixFQUc0QixDQUg1QixFQUlDLENBSkQsRUFJSSxDQUpKLEVBSU8sQ0FKUCxFQUlVLENBSlY7QUFPQSxXQUFPLElBQVA7QUFFQSxHQXJGZ0M7QUF1RmpDQyxFQUFBQSxlQUFlLEVBQUUsWUFBWTtBQUU1QixRQUFJQyxFQUFFLEdBQUcsSUFBSUMsZUFBSixFQUFUO0FBRUEsV0FBTyxTQUFTRixlQUFULENBQTBCWixDQUExQixFQUE4QjtBQUVwQztBQUVBLFVBQUlMLEVBQUUsR0FBRyxLQUFLMUIsUUFBZDtBQUNBLFVBQUlnQyxFQUFFLEdBQUdELENBQUMsQ0FBQy9CLFFBQVg7QUFFQSxVQUFJOEMsTUFBTSxHQUFHLElBQUlGLEVBQUUsQ0FBQ04sbUJBQUgsQ0FBd0JQLENBQXhCLEVBQTJCLENBQTNCLEVBQStCN0IsTUFBL0IsRUFBakI7QUFDQSxVQUFJNkMsTUFBTSxHQUFHLElBQUlILEVBQUUsQ0FBQ04sbUJBQUgsQ0FBd0JQLENBQXhCLEVBQTJCLENBQTNCLEVBQStCN0IsTUFBL0IsRUFBakI7QUFDQSxVQUFJOEMsTUFBTSxHQUFHLElBQUlKLEVBQUUsQ0FBQ04sbUJBQUgsQ0FBd0JQLENBQXhCLEVBQTJCLENBQTNCLEVBQStCN0IsTUFBL0IsRUFBakI7QUFFQXdCLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVU0sRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVYyxNQUFwQjtBQUNBcEIsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVTSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVjLE1BQXBCO0FBQ0FwQixNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVNLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVWMsTUFBcEI7QUFDQXBCLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFWO0FBRUFBLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVU0sRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVZSxNQUFwQjtBQUNBckIsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVTSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVlLE1BQXBCO0FBQ0FyQixNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVNLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVWUsTUFBcEI7QUFDQXJCLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFWO0FBRUFBLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVU0sRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVZ0IsTUFBcEI7QUFDQXRCLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVU0sRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVZ0IsTUFBcEI7QUFDQXRCLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV00sRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXZ0IsTUFBdEI7QUFDQXRCLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFYO0FBRUFBLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFYO0FBQ0FBLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFYO0FBQ0FBLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFYO0FBQ0FBLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFYO0FBRUEsYUFBTyxJQUFQO0FBRUEsS0FqQ0Q7QUFtQ0EsR0F2Q2dCLEVBdkZnQjtBQWdJakN1QixFQUFBQSxxQkFBcUIsRUFBRSwrQkFBV0MsS0FBWCxFQUFtQjtBQUV6QyxRQUFLLEVBQUlBLEtBQUssSUFBSUEsS0FBSyxDQUFDQyxPQUFuQixDQUFMLEVBQW9DO0FBRW5DaEQsTUFBQUEsT0FBTyxDQUFDQyxLQUFSLENBQWUsdUdBQWY7QUFFQTs7QUFFRCxRQUFJc0IsRUFBRSxHQUFHLEtBQUsxQixRQUFkO0FBRUEsUUFBSXdDLENBQUMsR0FBR1UsS0FBSyxDQUFDVixDQUFkO0FBQUEsUUFBaUJDLENBQUMsR0FBR1MsS0FBSyxDQUFDVCxDQUEzQjtBQUFBLFFBQThCQyxDQUFDLEdBQUdRLEtBQUssQ0FBQ1IsQ0FBeEM7QUFDQSxRQUFJVSxDQUFDLEdBQUdDLElBQUksQ0FBQ0MsR0FBTCxDQUFVZCxDQUFWLENBQVI7QUFBQSxRQUF1QmUsQ0FBQyxHQUFHRixJQUFJLENBQUNHLEdBQUwsQ0FBVWhCLENBQVYsQ0FBM0I7QUFDQSxRQUFJaUIsQ0FBQyxHQUFHSixJQUFJLENBQUNDLEdBQUwsQ0FBVWIsQ0FBVixDQUFSO0FBQUEsUUFBdUJpQixDQUFDLEdBQUdMLElBQUksQ0FBQ0csR0FBTCxDQUFVZixDQUFWLENBQTNCO0FBQ0EsUUFBSWtCLENBQUMsR0FBR04sSUFBSSxDQUFDQyxHQUFMLENBQVVaLENBQVYsQ0FBUjtBQUFBLFFBQXVCa0IsQ0FBQyxHQUFHUCxJQUFJLENBQUNHLEdBQUwsQ0FBVWQsQ0FBVixDQUEzQjs7QUFFQSxRQUFLUSxLQUFLLENBQUNXLEtBQU4sS0FBZ0IsS0FBckIsRUFBNkI7QUFFNUIsVUFBSUMsRUFBRSxHQUFHVixDQUFDLEdBQUdPLENBQWI7QUFBQSxVQUFnQkksRUFBRSxHQUFHWCxDQUFDLEdBQUdRLENBQXpCO0FBQUEsVUFBNEJJLEVBQUUsR0FBR1QsQ0FBQyxHQUFHSSxDQUFyQztBQUFBLFVBQXdDTSxFQUFFLEdBQUdWLENBQUMsR0FBR0ssQ0FBakQ7QUFFQWxDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVStCLENBQUMsR0FBR0UsQ0FBZDtBQUNBakMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUUrQixDQUFGLEdBQU1HLENBQWhCO0FBQ0FsQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVnQyxDQUFWO0FBRUFoQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVxQyxFQUFFLEdBQUdDLEVBQUUsR0FBR04sQ0FBcEI7QUFDQWhDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVW9DLEVBQUUsR0FBR0csRUFBRSxHQUFHUCxDQUFwQjtBQUNBaEMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUU2QixDQUFGLEdBQU1FLENBQWhCO0FBRUEvQixNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV1QyxFQUFFLEdBQUdILEVBQUUsR0FBR0osQ0FBcEI7QUFDQWhDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVXNDLEVBQUUsR0FBR0QsRUFBRSxHQUFHTCxDQUFwQjtBQUNBaEMsTUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXMEIsQ0FBQyxHQUFHSyxDQUFmO0FBRUEsS0FoQkQsTUFnQk8sSUFBS1AsS0FBSyxDQUFDVyxLQUFOLEtBQWdCLEtBQXJCLEVBQTZCO0FBRW5DLFVBQUlLLEVBQUUsR0FBR1QsQ0FBQyxHQUFHRSxDQUFiO0FBQUEsVUFBZ0JRLEVBQUUsR0FBR1YsQ0FBQyxHQUFHRyxDQUF6QjtBQUFBLFVBQTRCUSxFQUFFLEdBQUdWLENBQUMsR0FBR0MsQ0FBckM7QUFBQSxVQUF3Q1UsRUFBRSxHQUFHWCxDQUFDLEdBQUdFLENBQWpEO0FBRUFsQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV3QyxFQUFFLEdBQUdHLEVBQUUsR0FBR2QsQ0FBcEI7QUFDQTdCLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTBDLEVBQUUsR0FBR2IsQ0FBTCxHQUFTWSxFQUFuQjtBQUNBekMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVMEIsQ0FBQyxHQUFHTSxDQUFkO0FBRUFoQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUwQixDQUFDLEdBQUdRLENBQWQ7QUFDQWxDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTBCLENBQUMsR0FBR08sQ0FBZDtBQUNBakMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUU2QixDQUFaO0FBRUE3QixNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV5QyxFQUFFLEdBQUdaLENBQUwsR0FBU2EsRUFBbkI7QUFDQTFDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTJDLEVBQUUsR0FBR0gsRUFBRSxHQUFHWCxDQUFwQjtBQUNBN0IsTUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXMEIsQ0FBQyxHQUFHSyxDQUFmO0FBRUEsS0FoQk0sTUFnQkEsSUFBS1AsS0FBSyxDQUFDVyxLQUFOLEtBQWdCLEtBQXJCLEVBQTZCO0FBRW5DLFVBQUlLLEVBQUUsR0FBR1QsQ0FBQyxHQUFHRSxDQUFiO0FBQUEsVUFBZ0JRLEVBQUUsR0FBR1YsQ0FBQyxHQUFHRyxDQUF6QjtBQUFBLFVBQTRCUSxFQUFFLEdBQUdWLENBQUMsR0FBR0MsQ0FBckM7QUFBQSxVQUF3Q1UsRUFBRSxHQUFHWCxDQUFDLEdBQUdFLENBQWpEO0FBRUFsQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV3QyxFQUFFLEdBQUdHLEVBQUUsR0FBR2QsQ0FBcEI7QUFDQTdCLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFFMEIsQ0FBRixHQUFNUSxDQUFoQjtBQUNBbEMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVMEMsRUFBRSxHQUFHRCxFQUFFLEdBQUdaLENBQXBCO0FBRUE3QixNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV5QyxFQUFFLEdBQUdDLEVBQUUsR0FBR2IsQ0FBcEI7QUFDQTdCLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTBCLENBQUMsR0FBR08sQ0FBZDtBQUNBakMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVMkMsRUFBRSxHQUFHSCxFQUFFLEdBQUdYLENBQXBCO0FBRUE3QixNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBRTBCLENBQUYsR0FBTU0sQ0FBaEI7QUFDQWhDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTZCLENBQVY7QUFDQTdCLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVzBCLENBQUMsR0FBR0ssQ0FBZjtBQUVBLEtBaEJNLE1BZ0JBLElBQUtQLEtBQUssQ0FBQ1csS0FBTixLQUFnQixLQUFyQixFQUE2QjtBQUVuQyxVQUFJQyxFQUFFLEdBQUdWLENBQUMsR0FBR08sQ0FBYjtBQUFBLFVBQWdCSSxFQUFFLEdBQUdYLENBQUMsR0FBR1EsQ0FBekI7QUFBQSxVQUE0QkksRUFBRSxHQUFHVCxDQUFDLEdBQUdJLENBQXJDO0FBQUEsVUFBd0NNLEVBQUUsR0FBR1YsQ0FBQyxHQUFHSyxDQUFqRDtBQUVBbEMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVK0IsQ0FBQyxHQUFHRSxDQUFkO0FBQ0FqQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVzQyxFQUFFLEdBQUdOLENBQUwsR0FBU0ssRUFBbkI7QUFDQXJDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVW9DLEVBQUUsR0FBR0osQ0FBTCxHQUFTTyxFQUFuQjtBQUVBdkMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVK0IsQ0FBQyxHQUFHRyxDQUFkO0FBQ0FsQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV1QyxFQUFFLEdBQUdQLENBQUwsR0FBU0ksRUFBbkI7QUFDQXBDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVXFDLEVBQUUsR0FBR0wsQ0FBTCxHQUFTTSxFQUFuQjtBQUVBdEMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUVnQyxDQUFaO0FBQ0FoQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVU2QixDQUFDLEdBQUdFLENBQWQ7QUFDQS9CLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVzBCLENBQUMsR0FBR0ssQ0FBZjtBQUVBLEtBaEJNLE1BZ0JBLElBQUtQLEtBQUssQ0FBQ1csS0FBTixLQUFnQixLQUFyQixFQUE2QjtBQUVuQyxVQUFJUyxFQUFFLEdBQUdsQixDQUFDLEdBQUdLLENBQWI7QUFBQSxVQUFnQmMsRUFBRSxHQUFHbkIsQ0FBQyxHQUFHTSxDQUF6QjtBQUFBLFVBQTRCYyxFQUFFLEdBQUdqQixDQUFDLEdBQUdFLENBQXJDO0FBQUEsVUFBd0NnQixFQUFFLEdBQUdsQixDQUFDLEdBQUdHLENBQWpEO0FBRUFoQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUrQixDQUFDLEdBQUdFLENBQWQ7QUFDQWpDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVStDLEVBQUUsR0FBR0gsRUFBRSxHQUFHVixDQUFwQjtBQUNBbEMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVOEMsRUFBRSxHQUFHWixDQUFMLEdBQVNXLEVBQW5CO0FBRUE3QyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVrQyxDQUFWO0FBQ0FsQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUwQixDQUFDLEdBQUdPLENBQWQ7QUFDQWpDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFFNkIsQ0FBRixHQUFNSSxDQUFoQjtBQUVBakMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUVnQyxDQUFGLEdBQU1DLENBQWhCO0FBQ0FqQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVU2QyxFQUFFLEdBQUdYLENBQUwsR0FBU1ksRUFBbkI7QUFDQTlDLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVzRDLEVBQUUsR0FBR0csRUFBRSxHQUFHYixDQUFyQjtBQUVBLEtBaEJNLE1BZ0JBLElBQUtWLEtBQUssQ0FBQ1csS0FBTixLQUFnQixLQUFyQixFQUE2QjtBQUVuQyxVQUFJUyxFQUFFLEdBQUdsQixDQUFDLEdBQUdLLENBQWI7QUFBQSxVQUFnQmMsRUFBRSxHQUFHbkIsQ0FBQyxHQUFHTSxDQUF6QjtBQUFBLFVBQTRCYyxFQUFFLEdBQUdqQixDQUFDLEdBQUdFLENBQXJDO0FBQUEsVUFBd0NnQixFQUFFLEdBQUdsQixDQUFDLEdBQUdHLENBQWpEO0FBRUFoQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUrQixDQUFDLEdBQUdFLENBQWQ7QUFDQWpDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFFa0MsQ0FBWjtBQUNBbEMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVZ0MsQ0FBQyxHQUFHQyxDQUFkO0FBRUFqQyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVU0QyxFQUFFLEdBQUdWLENBQUwsR0FBU2EsRUFBbkI7QUFDQS9DLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTBCLENBQUMsR0FBR08sQ0FBZDtBQUNBakMsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVNkMsRUFBRSxHQUFHWCxDQUFMLEdBQVNZLEVBQW5CO0FBRUE5QyxNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVU4QyxFQUFFLEdBQUdaLENBQUwsR0FBU1csRUFBbkI7QUFDQTdDLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTZCLENBQUMsR0FBR0ksQ0FBZDtBQUNBakMsTUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXK0MsRUFBRSxHQUFHYixDQUFMLEdBQVNVLEVBQXBCO0FBRUEsS0EvR3dDLENBaUh6Qzs7O0FBQ0E1QyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBVjtBQUNBQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBVjtBQUNBQSxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBWCxDQXBIeUMsQ0FzSHpDOztBQUNBQSxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBWDtBQUNBQSxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBWDtBQUNBQSxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBWDtBQUNBQSxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBWDtBQUVBLFdBQU8sSUFBUDtBQUVBLEdBOVBnQztBQWdRakNnRCxFQUFBQSwwQkFBMEIsRUFBRSxZQUFZO0FBRXZDLFFBQUlDLElBQUksR0FBRyxJQUFJOUIsZUFBSixDQUFhLENBQWIsRUFBZ0IsQ0FBaEIsRUFBbUIsQ0FBbkIsQ0FBWDtBQUNBLFFBQUkrQixHQUFHLEdBQUcsSUFBSS9CLGVBQUosQ0FBYSxDQUFiLEVBQWdCLENBQWhCLEVBQW1CLENBQW5CLENBQVY7QUFFQSxXQUFPLFNBQVM2QiwwQkFBVCxDQUFxQ0csQ0FBckMsRUFBeUM7QUFFL0MsYUFBTyxLQUFLQyxPQUFMLENBQWNILElBQWQsRUFBb0JFLENBQXBCLEVBQXVCRCxHQUF2QixDQUFQO0FBRUEsS0FKRDtBQU1BLEdBWDJCLEVBaFFLO0FBNlFqQ0csRUFBQUEsTUFBTSxFQUFFLFlBQVk7QUFFbkIsUUFBSXZDLENBQUMsR0FBRyxJQUFJSyxlQUFKLEVBQVI7QUFDQSxRQUFJSixDQUFDLEdBQUcsSUFBSUksZUFBSixFQUFSO0FBQ0EsUUFBSUgsQ0FBQyxHQUFHLElBQUlHLGVBQUosRUFBUjtBQUVBLFdBQU8sU0FBU2tDLE1BQVQsQ0FBaUJDLEdBQWpCLEVBQXNCQyxNQUF0QixFQUE4QkMsRUFBOUIsRUFBbUM7QUFFekMsVUFBSXhELEVBQUUsR0FBRyxLQUFLMUIsUUFBZDtBQUVBMEMsTUFBQUEsQ0FBQyxDQUFDeUMsVUFBRixDQUFjSCxHQUFkLEVBQW1CQyxNQUFuQjs7QUFFQSxVQUFLdkMsQ0FBQyxDQUFDMEMsUUFBRixPQUFpQixDQUF0QixFQUEwQjtBQUV6QjtBQUVBMUMsUUFBQUEsQ0FBQyxDQUFDQSxDQUFGLEdBQU0sQ0FBTjtBQUVBOztBQUVEQSxNQUFBQSxDQUFDLENBQUMyQyxTQUFGO0FBQ0E3QyxNQUFBQSxDQUFDLENBQUM4QyxZQUFGLENBQWdCSixFQUFoQixFQUFvQnhDLENBQXBCOztBQUVBLFVBQUtGLENBQUMsQ0FBQzRDLFFBQUYsT0FBaUIsQ0FBdEIsRUFBMEI7QUFFekI7QUFFQSxZQUFLL0IsSUFBSSxDQUFDa0MsR0FBTCxDQUFVTCxFQUFFLENBQUN4QyxDQUFiLE1BQXFCLENBQTFCLEVBQThCO0FBRTdCQSxVQUFBQSxDQUFDLENBQUNGLENBQUYsSUFBTyxNQUFQO0FBRUEsU0FKRCxNQUlPO0FBRU5FLFVBQUFBLENBQUMsQ0FBQ0EsQ0FBRixJQUFPLE1BQVA7QUFFQTs7QUFFREEsUUFBQUEsQ0FBQyxDQUFDMkMsU0FBRjtBQUNBN0MsUUFBQUEsQ0FBQyxDQUFDOEMsWUFBRixDQUFnQkosRUFBaEIsRUFBb0J4QyxDQUFwQjtBQUVBOztBQUVERixNQUFBQSxDQUFDLENBQUM2QyxTQUFGO0FBQ0E1QyxNQUFBQSxDQUFDLENBQUM2QyxZQUFGLENBQWdCNUMsQ0FBaEIsRUFBbUJGLENBQW5CO0FBRUFkLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVWMsQ0FBQyxDQUFDQSxDQUFaO0FBQWVkLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVWUsQ0FBQyxDQUFDRCxDQUFaO0FBQWVkLE1BQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVWdCLENBQUMsQ0FBQ0YsQ0FBWjtBQUM5QmQsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVYyxDQUFDLENBQUNDLENBQVo7QUFBZWYsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVZSxDQUFDLENBQUNBLENBQVo7QUFBZWYsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVZ0IsQ0FBQyxDQUFDRCxDQUFaO0FBQzlCZixNQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVjLENBQUMsQ0FBQ0UsQ0FBWjtBQUFlaEIsTUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVZSxDQUFDLENBQUNDLENBQVo7QUFBZWhCLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV2dCLENBQUMsQ0FBQ0EsQ0FBYjtBQUU5QixhQUFPLElBQVA7QUFFQSxLQTdDRDtBQStDQSxHQXJETyxFQTdReUI7QUFvVWpDOEMsRUFBQUEsUUFBUSxFQUFFLGtCQUFXekQsQ0FBWCxFQUFjMEQsQ0FBZCxFQUFrQjtBQUUzQixRQUFLQSxDQUFDLEtBQUtDLFNBQVgsRUFBdUI7QUFFdEJ2RixNQUFBQSxPQUFPLENBQUN3RixJQUFSLENBQWMsa0dBQWQ7QUFDQSxhQUFPLEtBQUtDLGdCQUFMLENBQXVCN0QsQ0FBdkIsRUFBMEIwRCxDQUExQixDQUFQO0FBRUE7O0FBRUQsV0FBTyxLQUFLRyxnQkFBTCxDQUF1QixJQUF2QixFQUE2QjdELENBQTdCLENBQVA7QUFFQSxHQS9VZ0M7QUFpVmpDOEQsRUFBQUEsV0FBVyxFQUFFLHFCQUFXOUQsQ0FBWCxFQUFlO0FBRTNCLFdBQU8sS0FBSzZELGdCQUFMLENBQXVCN0QsQ0FBdkIsRUFBMEIsSUFBMUIsQ0FBUDtBQUVBLEdBclZnQztBQXVWakM2RCxFQUFBQSxnQkFBZ0IsRUFBRSwwQkFBV3hDLENBQVgsRUFBY0csQ0FBZCxFQUFrQjtBQUVuQyxRQUFJTyxFQUFFLEdBQUdWLENBQUMsQ0FBQ3BELFFBQVg7QUFDQSxRQUFJZ0UsRUFBRSxHQUFHVCxDQUFDLENBQUN2RCxRQUFYO0FBQ0EsUUFBSTBCLEVBQUUsR0FBRyxLQUFLMUIsUUFBZDtBQUVBLFFBQUk4RixHQUFHLEdBQUdoQyxFQUFFLENBQUUsQ0FBRixDQUFaO0FBQUEsUUFBbUJpQyxHQUFHLEdBQUdqQyxFQUFFLENBQUUsQ0FBRixDQUEzQjtBQUFBLFFBQWtDa0MsR0FBRyxHQUFHbEMsRUFBRSxDQUFFLENBQUYsQ0FBMUM7QUFBQSxRQUFpRG1DLEdBQUcsR0FBR25DLEVBQUUsQ0FBRSxFQUFGLENBQXpEO0FBQ0EsUUFBSW9DLEdBQUcsR0FBR3BDLEVBQUUsQ0FBRSxDQUFGLENBQVo7QUFBQSxRQUFtQnFDLEdBQUcsR0FBR3JDLEVBQUUsQ0FBRSxDQUFGLENBQTNCO0FBQUEsUUFBa0NzQyxHQUFHLEdBQUd0QyxFQUFFLENBQUUsQ0FBRixDQUExQztBQUFBLFFBQWlEdUMsR0FBRyxHQUFHdkMsRUFBRSxDQUFFLEVBQUYsQ0FBekQ7QUFDQSxRQUFJd0MsR0FBRyxHQUFHeEMsRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFBLFFBQW1CeUMsR0FBRyxHQUFHekMsRUFBRSxDQUFFLENBQUYsQ0FBM0I7QUFBQSxRQUFrQzBDLEdBQUcsR0FBRzFDLEVBQUUsQ0FBRSxFQUFGLENBQTFDO0FBQUEsUUFBa0QyQyxHQUFHLEdBQUczQyxFQUFFLENBQUUsRUFBRixDQUExRDtBQUNBLFFBQUk0QyxHQUFHLEdBQUc1QyxFQUFFLENBQUUsQ0FBRixDQUFaO0FBQUEsUUFBbUI2QyxHQUFHLEdBQUc3QyxFQUFFLENBQUUsQ0FBRixDQUEzQjtBQUFBLFFBQWtDOEMsR0FBRyxHQUFHOUMsRUFBRSxDQUFFLEVBQUYsQ0FBMUM7QUFBQSxRQUFrRCtDLEdBQUcsR0FBRy9DLEVBQUUsQ0FBRSxFQUFGLENBQTFEO0FBRUEsUUFBSWdELEdBQUcsR0FBRzlDLEVBQUUsQ0FBRSxDQUFGLENBQVo7QUFBQSxRQUFtQitDLEdBQUcsR0FBRy9DLEVBQUUsQ0FBRSxDQUFGLENBQTNCO0FBQUEsUUFBa0NnRCxHQUFHLEdBQUdoRCxFQUFFLENBQUUsQ0FBRixDQUExQztBQUFBLFFBQWlEaUQsR0FBRyxHQUFHakQsRUFBRSxDQUFFLEVBQUYsQ0FBekQ7QUFDQSxRQUFJa0QsR0FBRyxHQUFHbEQsRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFBLFFBQW1CbUQsR0FBRyxHQUFHbkQsRUFBRSxDQUFFLENBQUYsQ0FBM0I7QUFBQSxRQUFrQ29ELEdBQUcsR0FBR3BELEVBQUUsQ0FBRSxDQUFGLENBQTFDO0FBQUEsUUFBaURxRCxHQUFHLEdBQUdyRCxFQUFFLENBQUUsRUFBRixDQUF6RDtBQUNBLFFBQUlzRCxHQUFHLEdBQUd0RCxFQUFFLENBQUUsQ0FBRixDQUFaO0FBQUEsUUFBbUJ1RCxHQUFHLEdBQUd2RCxFQUFFLENBQUUsQ0FBRixDQUEzQjtBQUFBLFFBQWtDd0QsR0FBRyxHQUFHeEQsRUFBRSxDQUFFLEVBQUYsQ0FBMUM7QUFBQSxRQUFrRHlELEdBQUcsR0FBR3pELEVBQUUsQ0FBRSxFQUFGLENBQTFEO0FBQ0EsUUFBSTBELEdBQUcsR0FBRzFELEVBQUUsQ0FBRSxDQUFGLENBQVo7QUFBQSxRQUFtQjJELEdBQUcsR0FBRzNELEVBQUUsQ0FBRSxDQUFGLENBQTNCO0FBQUEsUUFBa0M0RCxHQUFHLEdBQUc1RCxFQUFFLENBQUUsRUFBRixDQUExQztBQUFBLFFBQWtENkQsR0FBRyxHQUFHN0QsRUFBRSxDQUFFLEVBQUYsQ0FBMUQ7QUFFQXRDLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVW9FLEdBQUcsR0FBR2dCLEdBQU4sR0FBWWYsR0FBRyxHQUFHbUIsR0FBbEIsR0FBd0JsQixHQUFHLEdBQUdzQixHQUE5QixHQUFvQ3JCLEdBQUcsR0FBR3lCLEdBQXBEO0FBQ0FoRyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVvRSxHQUFHLEdBQUdpQixHQUFOLEdBQVloQixHQUFHLEdBQUdvQixHQUFsQixHQUF3Qm5CLEdBQUcsR0FBR3VCLEdBQTlCLEdBQW9DdEIsR0FBRyxHQUFHMEIsR0FBcEQ7QUFDQWpHLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVW9FLEdBQUcsR0FBR2tCLEdBQU4sR0FBWWpCLEdBQUcsR0FBR3FCLEdBQWxCLEdBQXdCcEIsR0FBRyxHQUFHd0IsR0FBOUIsR0FBb0N2QixHQUFHLEdBQUcyQixHQUFwRDtBQUNBbEcsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXb0UsR0FBRyxHQUFHbUIsR0FBTixHQUFZbEIsR0FBRyxHQUFHc0IsR0FBbEIsR0FBd0JyQixHQUFHLEdBQUd5QixHQUE5QixHQUFvQ3hCLEdBQUcsR0FBRzRCLEdBQXJEO0FBRUFuRyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV3RSxHQUFHLEdBQUdZLEdBQU4sR0FBWVgsR0FBRyxHQUFHZSxHQUFsQixHQUF3QmQsR0FBRyxHQUFHa0IsR0FBOUIsR0FBb0NqQixHQUFHLEdBQUdxQixHQUFwRDtBQUNBaEcsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVd0UsR0FBRyxHQUFHYSxHQUFOLEdBQVlaLEdBQUcsR0FBR2dCLEdBQWxCLEdBQXdCZixHQUFHLEdBQUdtQixHQUE5QixHQUFvQ2xCLEdBQUcsR0FBR3NCLEdBQXBEO0FBQ0FqRyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV3RSxHQUFHLEdBQUdjLEdBQU4sR0FBWWIsR0FBRyxHQUFHaUIsR0FBbEIsR0FBd0JoQixHQUFHLEdBQUdvQixHQUE5QixHQUFvQ25CLEdBQUcsR0FBR3VCLEdBQXBEO0FBQ0FsRyxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVd3RSxHQUFHLEdBQUdlLEdBQU4sR0FBWWQsR0FBRyxHQUFHa0IsR0FBbEIsR0FBd0JqQixHQUFHLEdBQUdxQixHQUE5QixHQUFvQ3BCLEdBQUcsR0FBR3dCLEdBQXJEO0FBRUFuRyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVU0RSxHQUFHLEdBQUdRLEdBQU4sR0FBWVAsR0FBRyxHQUFHVyxHQUFsQixHQUF3QlYsR0FBRyxHQUFHYyxHQUE5QixHQUFvQ2IsR0FBRyxHQUFHaUIsR0FBcEQ7QUFDQWhHLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTRFLEdBQUcsR0FBR1MsR0FBTixHQUFZUixHQUFHLEdBQUdZLEdBQWxCLEdBQXdCWCxHQUFHLEdBQUdlLEdBQTlCLEdBQW9DZCxHQUFHLEdBQUdrQixHQUFwRDtBQUNBakcsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXNEUsR0FBRyxHQUFHVSxHQUFOLEdBQVlULEdBQUcsR0FBR2EsR0FBbEIsR0FBd0JaLEdBQUcsR0FBR2dCLEdBQTlCLEdBQW9DZixHQUFHLEdBQUdtQixHQUFyRDtBQUNBbEcsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXNEUsR0FBRyxHQUFHVyxHQUFOLEdBQVlWLEdBQUcsR0FBR2MsR0FBbEIsR0FBd0JiLEdBQUcsR0FBR2lCLEdBQTlCLEdBQW9DaEIsR0FBRyxHQUFHb0IsR0FBckQ7QUFFQW5HLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVWdGLEdBQUcsR0FBR0ksR0FBTixHQUFZSCxHQUFHLEdBQUdPLEdBQWxCLEdBQXdCTixHQUFHLEdBQUdVLEdBQTlCLEdBQW9DVCxHQUFHLEdBQUdhLEdBQXBEO0FBQ0FoRyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVnRixHQUFHLEdBQUdLLEdBQU4sR0FBWUosR0FBRyxHQUFHUSxHQUFsQixHQUF3QlAsR0FBRyxHQUFHVyxHQUE5QixHQUFvQ1YsR0FBRyxHQUFHYyxHQUFwRDtBQUNBakcsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXZ0YsR0FBRyxHQUFHTSxHQUFOLEdBQVlMLEdBQUcsR0FBR1MsR0FBbEIsR0FBd0JSLEdBQUcsR0FBR1ksR0FBOUIsR0FBb0NYLEdBQUcsR0FBR2UsR0FBckQ7QUFDQWxHLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV2dGLEdBQUcsR0FBR08sR0FBTixHQUFZTixHQUFHLEdBQUdVLEdBQWxCLEdBQXdCVCxHQUFHLEdBQUdhLEdBQTlCLEdBQW9DWixHQUFHLEdBQUdnQixHQUFyRDtBQUVBLFdBQU8sSUFBUDtBQUVBLEdBN1hnQztBQStYakNDLEVBQUFBLGNBQWMsRUFBRSx3QkFBV0MsQ0FBWCxFQUFlO0FBRTlCLFFBQUlyRyxFQUFFLEdBQUcsS0FBSzFCLFFBQWQ7QUFFQTBCLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsSUFBV3FHLENBQVg7QUFBY3JHLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsSUFBV3FHLENBQVg7QUFBY3JHLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsSUFBV3FHLENBQVg7QUFBY3JHLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsSUFBWXFHLENBQVo7QUFDMUNyRyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLElBQVdxRyxDQUFYO0FBQWNyRyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLElBQVdxRyxDQUFYO0FBQWNyRyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLElBQVdxRyxDQUFYO0FBQWNyRyxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLElBQVlxRyxDQUFaO0FBQzFDckcsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixJQUFXcUcsQ0FBWDtBQUFjckcsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixJQUFXcUcsQ0FBWDtBQUFjckcsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixJQUFZcUcsQ0FBWjtBQUFlckcsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixJQUFZcUcsQ0FBWjtBQUMzQ3JHLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsSUFBV3FHLENBQVg7QUFBY3JHLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsSUFBV3FHLENBQVg7QUFBY3JHLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsSUFBWXFHLENBQVo7QUFBZXJHLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsSUFBWXFHLENBQVo7QUFFM0MsV0FBTyxJQUFQO0FBRUEsR0ExWWdDO0FBNFlqQ0MsRUFBQUEsc0JBQXNCLEVBQUUsWUFBWTtBQUVuQyxRQUFJcEYsRUFBRSxHQUFHLElBQUlDLGVBQUosRUFBVDtBQUVBLFdBQU8sU0FBU21GLHNCQUFULENBQWlDQyxTQUFqQyxFQUE2QztBQUVuRCxXQUFNLElBQUlDLENBQUMsR0FBRyxDQUFSLEVBQVdDLENBQUMsR0FBR0YsU0FBUyxDQUFDRyxLQUEvQixFQUFzQ0YsQ0FBQyxHQUFHQyxDQUExQyxFQUE2Q0QsQ0FBQyxFQUE5QyxFQUFvRDtBQUVuRHRGLFFBQUFBLEVBQUUsQ0FBQ0osQ0FBSCxHQUFPeUYsU0FBUyxDQUFDSSxJQUFWLENBQWdCSCxDQUFoQixDQUFQO0FBQ0F0RixRQUFBQSxFQUFFLENBQUNILENBQUgsR0FBT3dGLFNBQVMsQ0FBQ0ssSUFBVixDQUFnQkosQ0FBaEIsQ0FBUDtBQUNBdEYsUUFBQUEsRUFBRSxDQUFDRixDQUFILEdBQU91RixTQUFTLENBQUNNLElBQVYsQ0FBZ0JMLENBQWhCLENBQVA7QUFFQXRGLFFBQUFBLEVBQUUsQ0FBQzRGLFlBQUgsQ0FBaUIsSUFBakI7QUFFQVAsUUFBQUEsU0FBUyxDQUFDUSxNQUFWLENBQWtCUCxDQUFsQixFQUFxQnRGLEVBQUUsQ0FBQ0osQ0FBeEIsRUFBMkJJLEVBQUUsQ0FBQ0gsQ0FBOUIsRUFBaUNHLEVBQUUsQ0FBQ0YsQ0FBcEM7QUFFQTs7QUFFRCxhQUFPdUYsU0FBUDtBQUVBLEtBaEJEO0FBa0JBLEdBdEJ1QixFQTVZUztBQW9hakNTLEVBQUFBLFdBQVcsRUFBRSx1QkFBWTtBQUV4QixRQUFJaEgsRUFBRSxHQUFHLEtBQUsxQixRQUFkO0FBRUEsUUFBSVUsR0FBRyxHQUFHZ0IsRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFBLFFBQW1CZixHQUFHLEdBQUdlLEVBQUUsQ0FBRSxDQUFGLENBQTNCO0FBQUEsUUFBa0NkLEdBQUcsR0FBR2MsRUFBRSxDQUFFLENBQUYsQ0FBMUM7QUFBQSxRQUFpRGIsR0FBRyxHQUFHYSxFQUFFLENBQUUsRUFBRixDQUF6RDtBQUNBLFFBQUlaLEdBQUcsR0FBR1ksRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFBLFFBQW1CWCxHQUFHLEdBQUdXLEVBQUUsQ0FBRSxDQUFGLENBQTNCO0FBQUEsUUFBa0NWLEdBQUcsR0FBR1UsRUFBRSxDQUFFLENBQUYsQ0FBMUM7QUFBQSxRQUFpRFQsR0FBRyxHQUFHUyxFQUFFLENBQUUsRUFBRixDQUF6RDtBQUNBLFFBQUlSLEdBQUcsR0FBR1EsRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFBLFFBQW1CUCxHQUFHLEdBQUdPLEVBQUUsQ0FBRSxDQUFGLENBQTNCO0FBQUEsUUFBa0NOLEdBQUcsR0FBR00sRUFBRSxDQUFFLEVBQUYsQ0FBMUM7QUFBQSxRQUFrREwsR0FBRyxHQUFHSyxFQUFFLENBQUUsRUFBRixDQUExRDtBQUNBLFFBQUlKLEdBQUcsR0FBR0ksRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFBLFFBQW1CSCxHQUFHLEdBQUdHLEVBQUUsQ0FBRSxDQUFGLENBQTNCO0FBQUEsUUFBa0NGLEdBQUcsR0FBR0UsRUFBRSxDQUFFLEVBQUYsQ0FBMUM7QUFBQSxRQUFrREQsR0FBRyxHQUFHQyxFQUFFLENBQUUsRUFBRixDQUExRCxDQVB3QixDQVN4QjtBQUNBOztBQUVBLFdBQ0NKLEdBQUcsSUFDRixDQUFFVCxHQUFGLEdBQVFHLEdBQVIsR0FBY0csR0FBZCxHQUNHUCxHQUFHLEdBQUdLLEdBQU4sR0FBWUUsR0FEZixHQUVHTixHQUFHLEdBQUdFLEdBQU4sR0FBWUssR0FGZixHQUdHVCxHQUFHLEdBQUdNLEdBQU4sR0FBWUcsR0FIZixHQUlHUixHQUFHLEdBQUdHLEdBQU4sR0FBWU0sR0FKZixHQUtHVixHQUFHLEdBQUdLLEdBQU4sR0FBWUssR0FOYixDQUFILEdBUUFFLEdBQUcsSUFDRixDQUFFYixHQUFGLEdBQVFNLEdBQVIsR0FBY0ssR0FBZCxHQUNHWCxHQUFHLEdBQUdPLEdBQU4sR0FBWUcsR0FEZixHQUVHUCxHQUFHLEdBQUdDLEdBQU4sR0FBWU0sR0FGZixHQUdHUixHQUFHLEdBQUdFLEdBQU4sR0FBWU8sR0FIZixHQUlHVCxHQUFHLEdBQUdLLEdBQU4sR0FBWUMsR0FKZixHQUtHTCxHQUFHLEdBQUdHLEdBQU4sR0FBWUUsR0FOYixDQVJILEdBZ0JBTSxHQUFHLElBQ0YsQ0FBRWQsR0FBRixHQUFRTyxHQUFSLEdBQWNFLEdBQWQsR0FDR1QsR0FBRyxHQUFHSyxHQUFOLEdBQVlNLEdBRGYsR0FFR1IsR0FBRyxHQUFHQyxHQUFOLEdBQVlLLEdBRmYsR0FHR1IsR0FBRyxHQUFHRyxHQUFOLEdBQVlPLEdBSGYsR0FJR1IsR0FBRyxHQUFHRSxHQUFOLEdBQVlHLEdBSmYsR0FLR1AsR0FBRyxHQUFHTSxHQUFOLEdBQVlDLEdBTmIsQ0FoQkgsR0F3QkFPLEdBQUcsSUFDRixDQUFFYixHQUFGLEdBQVFHLEdBQVIsR0FBY0csR0FBZCxHQUNHUixHQUFHLEdBQUdNLEdBQU4sR0FBWUcsR0FEZixHQUVHVCxHQUFHLEdBQUdLLEdBQU4sR0FBWUssR0FGZixHQUdHUixHQUFHLEdBQUdFLEdBQU4sR0FBWUssR0FIZixHQUlHUixHQUFHLEdBQUdHLEdBQU4sR0FBWU0sR0FKZixHQUtHVCxHQUFHLEdBQUdLLEdBQU4sR0FBWUUsR0FOYixDQXpCSjtBQW9DQSxHQXBkZ0M7QUFzZGpDeUgsRUFBQUEsU0FBUyxFQUFFLHFCQUFZO0FBRXRCLFFBQUlqSCxFQUFFLEdBQUcsS0FBSzFCLFFBQWQ7QUFDQSxRQUFJNEksR0FBSjtBQUVBQSxJQUFBQSxHQUFHLEdBQUdsSCxFQUFFLENBQUUsQ0FBRixDQUFSO0FBQWVBLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVUEsRUFBRSxDQUFFLENBQUYsQ0FBWjtBQUFtQkEsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVa0gsR0FBVjtBQUNsQ0EsSUFBQUEsR0FBRyxHQUFHbEgsRUFBRSxDQUFFLENBQUYsQ0FBUjtBQUFlQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVBLEVBQUUsQ0FBRSxDQUFGLENBQVo7QUFBbUJBLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVWtILEdBQVY7QUFDbENBLElBQUFBLEdBQUcsR0FBR2xILEVBQUUsQ0FBRSxDQUFGLENBQVI7QUFBZUEsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVQSxFQUFFLENBQUUsQ0FBRixDQUFaO0FBQW1CQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVrSCxHQUFWO0FBRWxDQSxJQUFBQSxHQUFHLEdBQUdsSCxFQUFFLENBQUUsQ0FBRixDQUFSO0FBQWVBLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVUEsRUFBRSxDQUFFLEVBQUYsQ0FBWjtBQUFvQkEsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXa0gsR0FBWDtBQUNuQ0EsSUFBQUEsR0FBRyxHQUFHbEgsRUFBRSxDQUFFLENBQUYsQ0FBUjtBQUFlQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVBLEVBQUUsQ0FBRSxFQUFGLENBQVo7QUFBb0JBLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV2tILEdBQVg7QUFDbkNBLElBQUFBLEdBQUcsR0FBR2xILEVBQUUsQ0FBRSxFQUFGLENBQVI7QUFBZ0JBLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV0EsRUFBRSxDQUFFLEVBQUYsQ0FBYjtBQUFxQkEsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXa0gsR0FBWDtBQUVyQyxXQUFPLElBQVA7QUFFQSxHQXJlZ0M7QUF1ZWpDQyxFQUFBQSxXQUFXLEVBQUUscUJBQVdyRyxDQUFYLEVBQWNDLENBQWQsRUFBaUJDLENBQWpCLEVBQXFCO0FBRWpDLFFBQUloQixFQUFFLEdBQUcsS0FBSzFCLFFBQWQ7O0FBRUEsUUFBS3dDLENBQUMsQ0FBQ3NHLFNBQVAsRUFBbUI7QUFFbEJwSCxNQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdjLENBQUMsQ0FBQ0EsQ0FBYjtBQUNBZCxNQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdjLENBQUMsQ0FBQ0MsQ0FBYjtBQUNBZixNQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdjLENBQUMsQ0FBQ0UsQ0FBYjtBQUVBLEtBTkQsTUFNTztBQUVOaEIsTUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXYyxDQUFYO0FBQ0FkLE1BQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV2UsQ0FBWDtBQUNBZixNQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVdnQixDQUFYO0FBRUE7O0FBRUQsV0FBTyxJQUFQO0FBRUEsR0EzZmdDO0FBNmZqQ3FHLEVBQUFBLFVBQVUsRUFBRSxvQkFBV2hILENBQVgsRUFBY2lILGlCQUFkLEVBQWtDO0FBRTdDO0FBQ0EsUUFBSXRILEVBQUUsR0FBRyxLQUFLMUIsUUFBZDtBQUFBLFFBQ0NnQyxFQUFFLEdBQUdELENBQUMsQ0FBQy9CLFFBRFI7QUFBQSxRQUdDVSxHQUFHLEdBQUdzQixFQUFFLENBQUUsQ0FBRixDQUhUO0FBQUEsUUFHZ0JsQixHQUFHLEdBQUdrQixFQUFFLENBQUUsQ0FBRixDQUh4QjtBQUFBLFFBRytCZCxHQUFHLEdBQUdjLEVBQUUsQ0FBRSxDQUFGLENBSHZDO0FBQUEsUUFHOENWLEdBQUcsR0FBR1UsRUFBRSxDQUFFLENBQUYsQ0FIdEQ7QUFBQSxRQUlDckIsR0FBRyxHQUFHcUIsRUFBRSxDQUFFLENBQUYsQ0FKVDtBQUFBLFFBSWdCakIsR0FBRyxHQUFHaUIsRUFBRSxDQUFFLENBQUYsQ0FKeEI7QUFBQSxRQUkrQmIsR0FBRyxHQUFHYSxFQUFFLENBQUUsQ0FBRixDQUp2QztBQUFBLFFBSThDVCxHQUFHLEdBQUdTLEVBQUUsQ0FBRSxDQUFGLENBSnREO0FBQUEsUUFLQ3BCLEdBQUcsR0FBR29CLEVBQUUsQ0FBRSxDQUFGLENBTFQ7QUFBQSxRQUtnQmhCLEdBQUcsR0FBR2dCLEVBQUUsQ0FBRSxDQUFGLENBTHhCO0FBQUEsUUFLK0JaLEdBQUcsR0FBR1ksRUFBRSxDQUFFLEVBQUYsQ0FMdkM7QUFBQSxRQUsrQ1IsR0FBRyxHQUFHUSxFQUFFLENBQUUsRUFBRixDQUx2RDtBQUFBLFFBTUNuQixHQUFHLEdBQUdtQixFQUFFLENBQUUsRUFBRixDQU5UO0FBQUEsUUFNaUJmLEdBQUcsR0FBR2UsRUFBRSxDQUFFLEVBQUYsQ0FOekI7QUFBQSxRQU1pQ1gsR0FBRyxHQUFHVyxFQUFFLENBQUUsRUFBRixDQU56QztBQUFBLFFBTWlEUCxHQUFHLEdBQUdPLEVBQUUsQ0FBRSxFQUFGLENBTnpEO0FBQUEsUUFRQ2lILEdBQUcsR0FBR2pJLEdBQUcsR0FBR0ssR0FBTixHQUFZRSxHQUFaLEdBQWtCTixHQUFHLEdBQUdHLEdBQU4sR0FBWUcsR0FBOUIsR0FBb0NOLEdBQUcsR0FBR0UsR0FBTixHQUFZSyxHQUFoRCxHQUFzRFQsR0FBRyxHQUFHTSxHQUFOLEdBQVlHLEdBQWxFLEdBQXdFUixHQUFHLEdBQUdHLEdBQU4sR0FBWU0sR0FBcEYsR0FBMEZWLEdBQUcsR0FBR0ssR0FBTixHQUFZSyxHQVI3RztBQUFBLFFBU0N5SCxHQUFHLEdBQUdySSxHQUFHLEdBQUdPLEdBQU4sR0FBWUcsR0FBWixHQUFrQlgsR0FBRyxHQUFHUyxHQUFOLEdBQVlFLEdBQTlCLEdBQW9DVixHQUFHLEdBQUdNLEdBQU4sR0FBWUssR0FBaEQsR0FBc0RiLEdBQUcsR0FBR1UsR0FBTixHQUFZRyxHQUFsRSxHQUF3RVosR0FBRyxHQUFHTyxHQUFOLEdBQVlNLEdBQXBGLEdBQTBGZCxHQUFHLEdBQUdTLEdBQU4sR0FBWUssR0FUN0c7QUFBQSxRQVVDMEgsR0FBRyxHQUFHdkksR0FBRyxHQUFHSyxHQUFOLEdBQVlNLEdBQVosR0FBa0JWLEdBQUcsR0FBR0csR0FBTixHQUFZTyxHQUE5QixHQUFvQ1YsR0FBRyxHQUFHRSxHQUFOLEdBQVlTLEdBQWhELEdBQXNEYixHQUFHLEdBQUdNLEdBQU4sR0FBWU8sR0FBbEUsR0FBd0VaLEdBQUcsR0FBR0csR0FBTixHQUFZVSxHQUFwRixHQUEwRmQsR0FBRyxHQUFHSyxHQUFOLEdBQVlTLEdBVjdHO0FBQUEsUUFXQzJILEdBQUcsR0FBR3ZJLEdBQUcsR0FBR0csR0FBTixHQUFZRyxHQUFaLEdBQWtCUCxHQUFHLEdBQUdLLEdBQU4sR0FBWUUsR0FBOUIsR0FBb0NOLEdBQUcsR0FBR0UsR0FBTixHQUFZSyxHQUFoRCxHQUFzRFQsR0FBRyxHQUFHTSxHQUFOLEdBQVlHLEdBQWxFLEdBQXdFUixHQUFHLEdBQUdHLEdBQU4sR0FBWU0sR0FBcEYsR0FBMEZWLEdBQUcsR0FBR0ssR0FBTixHQUFZSyxHQVg3RztBQWFBLFFBQUlnSSxHQUFHLEdBQUczSSxHQUFHLEdBQUd1SSxHQUFOLEdBQVluSSxHQUFHLEdBQUdvSSxHQUFsQixHQUF3QmhJLEdBQUcsR0FBR2lJLEdBQTlCLEdBQW9DN0gsR0FBRyxHQUFHOEgsR0FBcEQ7O0FBRUEsUUFBS0MsR0FBRyxLQUFLLENBQWIsRUFBaUI7QUFFaEIsVUFBSUMsR0FBRyxHQUFHLG9FQUFWOztBQUVBLFVBQUtOLGlCQUFpQixLQUFLLElBQTNCLEVBQWtDO0FBRWpDLGNBQU0sSUFBSU8sS0FBSixDQUFXRCxHQUFYLENBQU47QUFFQSxPQUpELE1BSU87QUFFTm5KLFFBQUFBLE9BQU8sQ0FBQ3dGLElBQVIsQ0FBYzJELEdBQWQ7QUFFQTs7QUFFRCxhQUFPLEtBQUszSCxRQUFMLEVBQVA7QUFFQTs7QUFFRCxRQUFJNkgsTUFBTSxHQUFHLElBQUlILEdBQWpCO0FBRUEzSCxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV1SCxHQUFHLEdBQUdPLE1BQWhCO0FBQ0E5SCxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBRVQsR0FBRyxHQUFHRyxHQUFOLEdBQVlFLEdBQVosR0FBa0JOLEdBQUcsR0FBR0ssR0FBTixHQUFZQyxHQUE5QixHQUFvQ0wsR0FBRyxHQUFHQyxHQUFOLEdBQVlNLEdBQWhELEdBQXNEVixHQUFHLEdBQUdPLEdBQU4sR0FBWUcsR0FBbEUsR0FBd0VSLEdBQUcsR0FBR0UsR0FBTixHQUFZTyxHQUFwRixHQUEwRlgsR0FBRyxHQUFHTSxHQUFOLEdBQVlLLEdBQXhHLElBQWdIK0gsTUFBMUg7QUFDQTlILElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFFWCxHQUFHLEdBQUdNLEdBQU4sR0FBWUMsR0FBWixHQUFrQkwsR0FBRyxHQUFHRSxHQUFOLEdBQVlHLEdBQTlCLEdBQW9DTCxHQUFHLEdBQUdDLEdBQU4sR0FBWUssR0FBaEQsR0FBc0RULEdBQUcsR0FBR08sR0FBTixHQUFZRSxHQUFsRSxHQUF3RVIsR0FBRyxHQUFHRyxHQUFOLEdBQVlPLEdBQXBGLEdBQTBGWCxHQUFHLEdBQUdLLEdBQU4sR0FBWU0sR0FBeEcsSUFBZ0grSCxNQUExSDtBQUNBOUgsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUVWLEdBQUcsR0FBR0csR0FBTixHQUFZRyxHQUFaLEdBQWtCUCxHQUFHLEdBQUdLLEdBQU4sR0FBWUUsR0FBOUIsR0FBb0NOLEdBQUcsR0FBR0UsR0FBTixHQUFZSyxHQUFoRCxHQUFzRFQsR0FBRyxHQUFHTSxHQUFOLEdBQVlHLEdBQWxFLEdBQXdFUixHQUFHLEdBQUdHLEdBQU4sR0FBWU0sR0FBcEYsR0FBMEZWLEdBQUcsR0FBR0ssR0FBTixHQUFZSyxHQUF4RyxJQUFnSGdJLE1BQTFIO0FBRUE5SCxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV3SCxHQUFHLEdBQUdNLE1BQWhCO0FBQ0E5SCxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBRWQsR0FBRyxHQUFHUyxHQUFOLEdBQVlDLEdBQVosR0FBa0JULEdBQUcsR0FBR08sR0FBTixHQUFZRSxHQUE5QixHQUFvQ1QsR0FBRyxHQUFHSyxHQUFOLEdBQVlNLEdBQWhELEdBQXNEZCxHQUFHLEdBQUdXLEdBQU4sR0FBWUcsR0FBbEUsR0FBd0VaLEdBQUcsR0FBR00sR0FBTixHQUFZTyxHQUFwRixHQUEwRmYsR0FBRyxHQUFHVSxHQUFOLEdBQVlLLEdBQXhHLElBQWdIK0gsTUFBMUg7QUFDQTlILElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFFYixHQUFHLEdBQUdNLEdBQU4sR0FBWUcsR0FBWixHQUFrQlgsR0FBRyxHQUFHVSxHQUFOLEdBQVlDLEdBQTlCLEdBQW9DVCxHQUFHLEdBQUdLLEdBQU4sR0FBWUssR0FBaEQsR0FBc0RiLEdBQUcsR0FBR1csR0FBTixHQUFZRSxHQUFsRSxHQUF3RVosR0FBRyxHQUFHTyxHQUFOLEdBQVlPLEdBQXBGLEdBQTBGZixHQUFHLEdBQUdTLEdBQU4sR0FBWU0sR0FBeEcsSUFBZ0grSCxNQUExSDtBQUNBOUgsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUVmLEdBQUcsR0FBR1MsR0FBTixHQUFZRSxHQUFaLEdBQWtCVixHQUFHLEdBQUdPLEdBQU4sR0FBWUcsR0FBOUIsR0FBb0NWLEdBQUcsR0FBR00sR0FBTixHQUFZSyxHQUFoRCxHQUFzRGIsR0FBRyxHQUFHVSxHQUFOLEdBQVlHLEdBQWxFLEdBQXdFWixHQUFHLEdBQUdPLEdBQU4sR0FBWU0sR0FBcEYsR0FBMEZkLEdBQUcsR0FBR1MsR0FBTixHQUFZSyxHQUF4RyxJQUFnSGdJLE1BQTFIO0FBRUE5SCxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVV5SCxHQUFHLEdBQUdLLE1BQWhCO0FBQ0E5SCxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBRWIsR0FBRyxHQUFHRyxHQUFOLEdBQVlNLEdBQVosR0FBa0JWLEdBQUcsR0FBR0ssR0FBTixHQUFZSyxHQUE5QixHQUFvQ1QsR0FBRyxHQUFHQyxHQUFOLEdBQVlVLEdBQWhELEdBQXNEZCxHQUFHLEdBQUdPLEdBQU4sR0FBWU8sR0FBbEUsR0FBd0VaLEdBQUcsR0FBR0UsR0FBTixHQUFZVyxHQUFwRixHQUEwRmYsR0FBRyxHQUFHTSxHQUFOLEdBQVlTLEdBQXhHLElBQWdIK0gsTUFBMUg7QUFDQTlILElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFFZixHQUFHLEdBQUdNLEdBQU4sR0FBWUssR0FBWixHQUFrQlQsR0FBRyxHQUFHRSxHQUFOLEdBQVlPLEdBQTlCLEdBQW9DVCxHQUFHLEdBQUdDLEdBQU4sR0FBWVMsR0FBaEQsR0FBc0RiLEdBQUcsR0FBR08sR0FBTixHQUFZTSxHQUFsRSxHQUF3RVosR0FBRyxHQUFHRyxHQUFOLEdBQVlXLEdBQXBGLEdBQTBGZixHQUFHLEdBQUdLLEdBQU4sR0FBWVUsR0FBeEcsSUFBZ0grSCxNQUEzSDtBQUNBOUgsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQUVkLEdBQUcsR0FBR0csR0FBTixHQUFZTyxHQUFaLEdBQWtCWCxHQUFHLEdBQUdLLEdBQU4sR0FBWU0sR0FBOUIsR0FBb0NWLEdBQUcsR0FBR0UsR0FBTixHQUFZUyxHQUFoRCxHQUFzRGIsR0FBRyxHQUFHTSxHQUFOLEdBQVlPLEdBQWxFLEdBQXdFWixHQUFHLEdBQUdHLEdBQU4sR0FBWVUsR0FBcEYsR0FBMEZkLEdBQUcsR0FBR0ssR0FBTixHQUFZUyxHQUF4RyxJQUFnSGdJLE1BQTNIO0FBRUE5SCxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcwSCxHQUFHLEdBQUdJLE1BQWpCO0FBQ0E5SCxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBRWQsR0FBRyxHQUFHSyxHQUFOLEdBQVlDLEdBQVosR0FBa0JMLEdBQUcsR0FBR0csR0FBTixHQUFZRSxHQUE5QixHQUFvQ0wsR0FBRyxHQUFHQyxHQUFOLEdBQVlNLEdBQWhELEdBQXNEVixHQUFHLEdBQUdPLEdBQU4sR0FBWUcsR0FBbEUsR0FBd0VSLEdBQUcsR0FBR0UsR0FBTixHQUFZTyxHQUFwRixHQUEwRlgsR0FBRyxHQUFHTSxHQUFOLEdBQVlLLEdBQXhHLElBQWdIbUksTUFBM0g7QUFDQTlILElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFFYixHQUFHLEdBQUdFLEdBQU4sR0FBWUcsR0FBWixHQUFrQlAsR0FBRyxHQUFHTSxHQUFOLEdBQVlDLEdBQTlCLEdBQW9DTCxHQUFHLEdBQUdDLEdBQU4sR0FBWUssR0FBaEQsR0FBc0RULEdBQUcsR0FBR08sR0FBTixHQUFZRSxHQUFsRSxHQUF3RVIsR0FBRyxHQUFHRyxHQUFOLEdBQVlPLEdBQXBGLEdBQTBGWCxHQUFHLEdBQUdLLEdBQU4sR0FBWU0sR0FBeEcsSUFBZ0htSSxNQUEzSDtBQUNBOUgsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQUVmLEdBQUcsR0FBR0ssR0FBTixHQUFZRSxHQUFaLEdBQWtCTixHQUFHLEdBQUdHLEdBQU4sR0FBWUcsR0FBOUIsR0FBb0NOLEdBQUcsR0FBR0UsR0FBTixHQUFZSyxHQUFoRCxHQUFzRFQsR0FBRyxHQUFHTSxHQUFOLEdBQVlHLEdBQWxFLEdBQXdFUixHQUFHLEdBQUdHLEdBQU4sR0FBWU0sR0FBcEYsR0FBMEZWLEdBQUcsR0FBR0ssR0FBTixHQUFZSyxHQUF4RyxJQUFnSG9JLE1BQTNIO0FBRUEsV0FBTyxJQUFQO0FBRUEsR0F6akJnQztBQTJqQmpDQyxFQUFBQSxLQUFLLEVBQUUsZUFBV0MsQ0FBWCxFQUFlO0FBRXJCLFFBQUloSSxFQUFFLEdBQUcsS0FBSzFCLFFBQWQ7QUFDQSxRQUFJd0MsQ0FBQyxHQUFHa0gsQ0FBQyxDQUFDbEgsQ0FBVjtBQUFBLFFBQWFDLENBQUMsR0FBR2lILENBQUMsQ0FBQ2pILENBQW5CO0FBQUEsUUFBc0JDLENBQUMsR0FBR2dILENBQUMsQ0FBQ2hILENBQTVCO0FBRUFoQixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLElBQVdjLENBQVg7QUFBY2QsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixJQUFXZSxDQUFYO0FBQWNmLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsSUFBV2dCLENBQVg7QUFDNUJoQixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLElBQVdjLENBQVg7QUFBY2QsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixJQUFXZSxDQUFYO0FBQWNmLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsSUFBV2dCLENBQVg7QUFDNUJoQixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLElBQVdjLENBQVg7QUFBY2QsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixJQUFXZSxDQUFYO0FBQWNmLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsSUFBWWdCLENBQVo7QUFDNUJoQixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLElBQVdjLENBQVg7QUFBY2QsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixJQUFXZSxDQUFYO0FBQWNmLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsSUFBWWdCLENBQVo7QUFFNUIsV0FBTyxJQUFQO0FBRUEsR0F2a0JnQztBQXlrQmpDaUgsRUFBQUEsaUJBQWlCLEVBQUUsNkJBQVk7QUFFOUIsUUFBSWpJLEVBQUUsR0FBRyxLQUFLMUIsUUFBZDtBQUVBLFFBQUk0SixRQUFRLEdBQUdsSSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVBLEVBQUUsQ0FBRSxDQUFGLENBQVosR0FBb0JBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVUEsRUFBRSxDQUFFLENBQUYsQ0FBaEMsR0FBd0NBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVUEsRUFBRSxDQUFFLENBQUYsQ0FBbkU7QUFDQSxRQUFJbUksUUFBUSxHQUFHbkksRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVQSxFQUFFLENBQUUsQ0FBRixDQUFaLEdBQW9CQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVBLEVBQUUsQ0FBRSxDQUFGLENBQWhDLEdBQXdDQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVBLEVBQUUsQ0FBRSxDQUFGLENBQW5FO0FBQ0EsUUFBSW9JLFFBQVEsR0FBR3BJLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVUEsRUFBRSxDQUFFLENBQUYsQ0FBWixHQUFvQkEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVQSxFQUFFLENBQUUsQ0FBRixDQUFoQyxHQUF3Q0EsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXQSxFQUFFLENBQUUsRUFBRixDQUFwRTtBQUVBLFdBQU8yQixJQUFJLENBQUMwRyxJQUFMLENBQVcxRyxJQUFJLENBQUMyRyxHQUFMLENBQVVKLFFBQVYsRUFBb0JDLFFBQXBCLEVBQThCQyxRQUE5QixDQUFYLENBQVA7QUFFQSxHQW5sQmdDO0FBcWxCakNHLEVBQUFBLGVBQWUsRUFBRSx5QkFBV3pILENBQVgsRUFBY0MsQ0FBZCxFQUFpQkMsQ0FBakIsRUFBcUI7QUFFckMsU0FBS2pDLEdBQUwsQ0FFQyxDQUZELEVBRUksQ0FGSixFQUVPLENBRlAsRUFFVStCLENBRlYsRUFHQyxDQUhELEVBR0ksQ0FISixFQUdPLENBSFAsRUFHVUMsQ0FIVixFQUlDLENBSkQsRUFJSSxDQUpKLEVBSU8sQ0FKUCxFQUlVQyxDQUpWLEVBS0MsQ0FMRCxFQUtJLENBTEosRUFLTyxDQUxQLEVBS1UsQ0FMVjtBQVNBLFdBQU8sSUFBUDtBQUVBLEdBbG1CZ0M7QUFvbUJqQ3dILEVBQUFBLGFBQWEsRUFBRSx1QkFBV0MsS0FBWCxFQUFtQjtBQUVqQyxRQUFJMUcsQ0FBQyxHQUFHSixJQUFJLENBQUNDLEdBQUwsQ0FBVTZHLEtBQVYsQ0FBUjtBQUFBLFFBQTJCcEMsQ0FBQyxHQUFHMUUsSUFBSSxDQUFDRyxHQUFMLENBQVUyRyxLQUFWLENBQS9CO0FBRUEsU0FBSzFKLEdBQUwsQ0FFQyxDQUZELEVBRUksQ0FGSixFQUVPLENBRlAsRUFFVSxDQUZWLEVBR0MsQ0FIRCxFQUdJZ0QsQ0FISixFQUdPLENBQUVzRSxDQUhULEVBR1ksQ0FIWixFQUlDLENBSkQsRUFJSUEsQ0FKSixFQUlPdEUsQ0FKUCxFQUlVLENBSlYsRUFLQyxDQUxELEVBS0ksQ0FMSixFQUtPLENBTFAsRUFLVSxDQUxWO0FBU0EsV0FBTyxJQUFQO0FBRUEsR0FubkJnQztBQXFuQmpDMkcsRUFBQUEsYUFBYSxFQUFFLHVCQUFXRCxLQUFYLEVBQW1CO0FBRWpDLFFBQUkxRyxDQUFDLEdBQUdKLElBQUksQ0FBQ0MsR0FBTCxDQUFVNkcsS0FBVixDQUFSO0FBQUEsUUFBMkJwQyxDQUFDLEdBQUcxRSxJQUFJLENBQUNHLEdBQUwsQ0FBVTJHLEtBQVYsQ0FBL0I7QUFFQSxTQUFLMUosR0FBTCxDQUVFZ0QsQ0FGRixFQUVLLENBRkwsRUFFUXNFLENBRlIsRUFFVyxDQUZYLEVBR0UsQ0FIRixFQUdLLENBSEwsRUFHUSxDQUhSLEVBR1csQ0FIWCxFQUlDLENBQUVBLENBSkgsRUFJTSxDQUpOLEVBSVN0RSxDQUpULEVBSVksQ0FKWixFQUtFLENBTEYsRUFLSyxDQUxMLEVBS1EsQ0FMUixFQUtXLENBTFg7QUFTQSxXQUFPLElBQVA7QUFFQSxHQXBvQmdDO0FBc29CakM0RyxFQUFBQSxhQUFhLEVBQUUsdUJBQVdGLEtBQVgsRUFBbUI7QUFFakMsUUFBSTFHLENBQUMsR0FBR0osSUFBSSxDQUFDQyxHQUFMLENBQVU2RyxLQUFWLENBQVI7QUFBQSxRQUEyQnBDLENBQUMsR0FBRzFFLElBQUksQ0FBQ0csR0FBTCxDQUFVMkcsS0FBVixDQUEvQjtBQUVBLFNBQUsxSixHQUFMLENBRUNnRCxDQUZELEVBRUksQ0FBRXNFLENBRk4sRUFFUyxDQUZULEVBRVksQ0FGWixFQUdDQSxDQUhELEVBR0l0RSxDQUhKLEVBR08sQ0FIUCxFQUdVLENBSFYsRUFJQyxDQUpELEVBSUksQ0FKSixFQUlPLENBSlAsRUFJVSxDQUpWLEVBS0MsQ0FMRCxFQUtJLENBTEosRUFLTyxDQUxQLEVBS1UsQ0FMVjtBQVNBLFdBQU8sSUFBUDtBQUVBLEdBcnBCZ0M7QUF1cEJqQzZHLEVBQUFBLGdCQUFnQixFQUFFLDBCQUFXQyxJQUFYLEVBQWlCQyxLQUFqQixFQUF5QjtBQUUxQztBQUVBLFFBQUkvRyxDQUFDLEdBQUdKLElBQUksQ0FBQ0MsR0FBTCxDQUFVa0gsS0FBVixDQUFSO0FBQ0EsUUFBSXpDLENBQUMsR0FBRzFFLElBQUksQ0FBQ0csR0FBTCxDQUFVZ0gsS0FBVixDQUFSO0FBQ0EsUUFBSUMsQ0FBQyxHQUFHLElBQUloSCxDQUFaO0FBQ0EsUUFBSWpCLENBQUMsR0FBRytILElBQUksQ0FBQy9ILENBQWI7QUFBQSxRQUFnQkMsQ0FBQyxHQUFHOEgsSUFBSSxDQUFDOUgsQ0FBekI7QUFBQSxRQUE0QkMsQ0FBQyxHQUFHNkgsSUFBSSxDQUFDN0gsQ0FBckM7QUFDQSxRQUFJZ0ksRUFBRSxHQUFHRCxDQUFDLEdBQUdqSSxDQUFiO0FBQUEsUUFBZ0JtSSxFQUFFLEdBQUdGLENBQUMsR0FBR2hJLENBQXpCO0FBRUEsU0FBS2hDLEdBQUwsQ0FFQ2lLLEVBQUUsR0FBR2xJLENBQUwsR0FBU2lCLENBRlYsRUFFYWlILEVBQUUsR0FBR2pJLENBQUwsR0FBU3NGLENBQUMsR0FBR3JGLENBRjFCLEVBRTZCZ0ksRUFBRSxHQUFHaEksQ0FBTCxHQUFTcUYsQ0FBQyxHQUFHdEYsQ0FGMUMsRUFFNkMsQ0FGN0MsRUFHQ2lJLEVBQUUsR0FBR2pJLENBQUwsR0FBU3NGLENBQUMsR0FBR3JGLENBSGQsRUFHaUJpSSxFQUFFLEdBQUdsSSxDQUFMLEdBQVNnQixDQUgxQixFQUc2QmtILEVBQUUsR0FBR2pJLENBQUwsR0FBU3FGLENBQUMsR0FBR3ZGLENBSDFDLEVBRzZDLENBSDdDLEVBSUNrSSxFQUFFLEdBQUdoSSxDQUFMLEdBQVNxRixDQUFDLEdBQUd0RixDQUpkLEVBSWlCa0ksRUFBRSxHQUFHakksQ0FBTCxHQUFTcUYsQ0FBQyxHQUFHdkYsQ0FKOUIsRUFJaUNpSSxDQUFDLEdBQUcvSCxDQUFKLEdBQVFBLENBQVIsR0FBWWUsQ0FKN0MsRUFJZ0QsQ0FKaEQsRUFLQyxDQUxELEVBS0ksQ0FMSixFQUtPLENBTFAsRUFLVSxDQUxWO0FBU0MsV0FBTyxJQUFQO0FBRUQsR0E1cUJnQztBQThxQmpDbUgsRUFBQUEsU0FBUyxFQUFFLG1CQUFXcEksQ0FBWCxFQUFjQyxDQUFkLEVBQWlCQyxDQUFqQixFQUFxQjtBQUUvQixTQUFLakMsR0FBTCxDQUVDK0IsQ0FGRCxFQUVJLENBRkosRUFFTyxDQUZQLEVBRVUsQ0FGVixFQUdDLENBSEQsRUFHSUMsQ0FISixFQUdPLENBSFAsRUFHVSxDQUhWLEVBSUMsQ0FKRCxFQUlJLENBSkosRUFJT0MsQ0FKUCxFQUlVLENBSlYsRUFLQyxDQUxELEVBS0ksQ0FMSixFQUtPLENBTFAsRUFLVSxDQUxWO0FBU0EsV0FBTyxJQUFQO0FBRUEsR0EzckJnQztBQTZyQmpDbUksRUFBQUEsU0FBUyxFQUFFLG1CQUFXckksQ0FBWCxFQUFjQyxDQUFkLEVBQWlCQyxDQUFqQixFQUFxQjtBQUUvQixTQUFLakMsR0FBTCxDQUVDLENBRkQsRUFFSWdDLENBRkosRUFFT0MsQ0FGUCxFQUVVLENBRlYsRUFHQ0YsQ0FIRCxFQUdJLENBSEosRUFHT0UsQ0FIUCxFQUdVLENBSFYsRUFJQ0YsQ0FKRCxFQUlJQyxDQUpKLEVBSU8sQ0FKUCxFQUlVLENBSlYsRUFLQyxDQUxELEVBS0ksQ0FMSixFQUtPLENBTFAsRUFLVSxDQUxWO0FBU0EsV0FBTyxJQUFQO0FBRUEsR0Exc0JnQztBQTRzQmpDcUMsRUFBQUEsT0FBTyxFQUFFLGlCQUFXZ0csUUFBWCxFQUFxQkMsVUFBckIsRUFBaUN0QixLQUFqQyxFQUF5QztBQUVqRCxRQUFJL0gsRUFBRSxHQUFHLEtBQUsxQixRQUFkO0FBRUEsUUFBSXdDLENBQUMsR0FBR3VJLFVBQVUsQ0FBQ0MsRUFBbkI7QUFBQSxRQUF1QnZJLENBQUMsR0FBR3NJLFVBQVUsQ0FBQ0UsRUFBdEM7QUFBQSxRQUEwQ3ZJLENBQUMsR0FBR3FJLFVBQVUsQ0FBQ0csRUFBekQ7QUFBQSxRQUE2REMsQ0FBQyxHQUFHSixVQUFVLENBQUNLLEVBQTVFO0FBQ0EsUUFBSUMsRUFBRSxHQUFHN0ksQ0FBQyxHQUFHQSxDQUFiO0FBQUEsUUFBZ0I4SSxFQUFFLEdBQUc3SSxDQUFDLEdBQUdBLENBQXpCO0FBQUEsUUFBNEI4SSxFQUFFLEdBQUc3SSxDQUFDLEdBQUdBLENBQXJDO0FBQ0EsUUFBSThJLEVBQUUsR0FBR2hKLENBQUMsR0FBRzZJLEVBQWI7QUFBQSxRQUFpQkksRUFBRSxHQUFHakosQ0FBQyxHQUFHOEksRUFBMUI7QUFBQSxRQUE4QkksRUFBRSxHQUFHbEosQ0FBQyxHQUFHK0ksRUFBdkM7QUFDQSxRQUFJSSxFQUFFLEdBQUdsSixDQUFDLEdBQUc2SSxFQUFiO0FBQUEsUUFBaUJNLEVBQUUsR0FBR25KLENBQUMsR0FBRzhJLEVBQTFCO0FBQUEsUUFBOEJNLEVBQUUsR0FBR25KLENBQUMsR0FBRzZJLEVBQXZDO0FBQ0EsUUFBSU8sRUFBRSxHQUFHWCxDQUFDLEdBQUdFLEVBQWI7QUFBQSxRQUFpQlUsRUFBRSxHQUFHWixDQUFDLEdBQUdHLEVBQTFCO0FBQUEsUUFBOEJVLEVBQUUsR0FBR2IsQ0FBQyxHQUFHSSxFQUF2QztBQUVBLFFBQUlVLEVBQUUsR0FBR3hDLEtBQUssQ0FBQ2pILENBQWY7QUFBQSxRQUFrQjBKLEVBQUUsR0FBR3pDLEtBQUssQ0FBQ2hILENBQTdCO0FBQUEsUUFBZ0MwSixFQUFFLEdBQUcxQyxLQUFLLENBQUMvRyxDQUEzQztBQUVBaEIsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUUsS0FBTWlLLEVBQUUsR0FBR0UsRUFBWCxDQUFGLElBQXNCSSxFQUFoQztBQUNBdkssSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUUrSixFQUFFLEdBQUdPLEVBQVAsSUFBY0MsRUFBeEI7QUFDQXZLLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFFZ0ssRUFBRSxHQUFHSyxFQUFQLElBQWNFLEVBQXhCO0FBQ0F2SyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBVjtBQUVBQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBRStKLEVBQUUsR0FBR08sRUFBUCxJQUFjRSxFQUF4QjtBQUNBeEssSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUUsS0FBTThKLEVBQUUsR0FBR0ssRUFBWCxDQUFGLElBQXNCSyxFQUFoQztBQUNBeEssSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQUVrSyxFQUFFLEdBQUdFLEVBQVAsSUFBY0ksRUFBeEI7QUFDQXhLLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFWO0FBRUFBLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFFZ0ssRUFBRSxHQUFHSyxFQUFQLElBQWNJLEVBQXhCO0FBQ0F6SyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBRWtLLEVBQUUsR0FBR0UsRUFBUCxJQUFjSyxFQUF4QjtBQUNBekssSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQUUsS0FBTThKLEVBQUUsR0FBR0csRUFBWCxDQUFGLElBQXNCUSxFQUFqQztBQUNBekssSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQVg7QUFFQUEsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXb0osUUFBUSxDQUFDdEksQ0FBcEI7QUFDQWQsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXb0osUUFBUSxDQUFDckksQ0FBcEI7QUFDQWYsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXb0osUUFBUSxDQUFDcEksQ0FBcEI7QUFDQWhCLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFYO0FBRUEsV0FBTyxJQUFQO0FBRUEsR0E5dUJnQztBQWd2QmpDMEssRUFBQUEsU0FBUyxFQUFFLFlBQVk7QUFFdEIsUUFBSUMsTUFBTSxHQUFHLElBQUl4SixlQUFKLEVBQWI7QUFDQSxRQUFJeUosTUFBTSxHQUFHLElBQUl2TSxPQUFKLEVBQWI7QUFFQSxXQUFPLFNBQVNxTSxTQUFULENBQW9CdEIsUUFBcEIsRUFBOEJDLFVBQTlCLEVBQTBDdEIsS0FBMUMsRUFBa0Q7QUFFeEQsVUFBSS9ILEVBQUUsR0FBRyxLQUFLMUIsUUFBZDtBQUVBLFVBQUlpTSxFQUFFLEdBQUdJLE1BQU0sQ0FBQzVMLEdBQVAsQ0FBWWlCLEVBQUUsQ0FBRSxDQUFGLENBQWQsRUFBcUJBLEVBQUUsQ0FBRSxDQUFGLENBQXZCLEVBQThCQSxFQUFFLENBQUUsQ0FBRixDQUFoQyxFQUF3Q3hCLE1BQXhDLEVBQVQ7QUFDQSxVQUFJZ00sRUFBRSxHQUFHRyxNQUFNLENBQUM1TCxHQUFQLENBQVlpQixFQUFFLENBQUUsQ0FBRixDQUFkLEVBQXFCQSxFQUFFLENBQUUsQ0FBRixDQUF2QixFQUE4QkEsRUFBRSxDQUFFLENBQUYsQ0FBaEMsRUFBd0N4QixNQUF4QyxFQUFUO0FBQ0EsVUFBSWlNLEVBQUUsR0FBR0UsTUFBTSxDQUFDNUwsR0FBUCxDQUFZaUIsRUFBRSxDQUFFLENBQUYsQ0FBZCxFQUFxQkEsRUFBRSxDQUFFLENBQUYsQ0FBdkIsRUFBOEJBLEVBQUUsQ0FBRSxFQUFGLENBQWhDLEVBQXlDeEIsTUFBekMsRUFBVCxDQU53RCxDQVF4RDs7QUFDQSxVQUFJbUosR0FBRyxHQUFHLEtBQUtYLFdBQUwsRUFBVjtBQUNBLFVBQUtXLEdBQUcsR0FBRyxDQUFYLEVBQWU0QyxFQUFFLEdBQUcsQ0FBRUEsRUFBUDtBQUVmbkIsTUFBQUEsUUFBUSxDQUFDdEksQ0FBVCxHQUFhZCxFQUFFLENBQUUsRUFBRixDQUFmO0FBQ0FvSixNQUFBQSxRQUFRLENBQUNySSxDQUFULEdBQWFmLEVBQUUsQ0FBRSxFQUFGLENBQWY7QUFDQW9KLE1BQUFBLFFBQVEsQ0FBQ3BJLENBQVQsR0FBYWhCLEVBQUUsQ0FBRSxFQUFGLENBQWYsQ0Fkd0QsQ0FnQnhEOztBQUNBNEssTUFBQUEsTUFBTSxDQUFDeEssSUFBUCxDQUFhLElBQWI7QUFFQSxVQUFJeUssS0FBSyxHQUFHLElBQUlOLEVBQWhCO0FBQ0EsVUFBSU8sS0FBSyxHQUFHLElBQUlOLEVBQWhCO0FBQ0EsVUFBSU8sS0FBSyxHQUFHLElBQUlOLEVBQWhCO0FBRUFHLE1BQUFBLE1BQU0sQ0FBQ3RNLFFBQVAsQ0FBaUIsQ0FBakIsS0FBd0J1TSxLQUF4QjtBQUNBRCxNQUFBQSxNQUFNLENBQUN0TSxRQUFQLENBQWlCLENBQWpCLEtBQXdCdU0sS0FBeEI7QUFDQUQsTUFBQUEsTUFBTSxDQUFDdE0sUUFBUCxDQUFpQixDQUFqQixLQUF3QnVNLEtBQXhCO0FBRUFELE1BQUFBLE1BQU0sQ0FBQ3RNLFFBQVAsQ0FBaUIsQ0FBakIsS0FBd0J3TSxLQUF4QjtBQUNBRixNQUFBQSxNQUFNLENBQUN0TSxRQUFQLENBQWlCLENBQWpCLEtBQXdCd00sS0FBeEI7QUFDQUYsTUFBQUEsTUFBTSxDQUFDdE0sUUFBUCxDQUFpQixDQUFqQixLQUF3QndNLEtBQXhCO0FBRUFGLE1BQUFBLE1BQU0sQ0FBQ3RNLFFBQVAsQ0FBaUIsQ0FBakIsS0FBd0J5TSxLQUF4QjtBQUNBSCxNQUFBQSxNQUFNLENBQUN0TSxRQUFQLENBQWlCLENBQWpCLEtBQXdCeU0sS0FBeEI7QUFDQUgsTUFBQUEsTUFBTSxDQUFDdE0sUUFBUCxDQUFpQixFQUFqQixLQUF5QnlNLEtBQXpCO0FBRUExQixNQUFBQSxVQUFVLENBQUMyQixxQkFBWCxDQUFrQ0osTUFBbEM7QUFFQTdDLE1BQUFBLEtBQUssQ0FBQ2pILENBQU4sR0FBVXlKLEVBQVY7QUFDQXhDLE1BQUFBLEtBQUssQ0FBQ2hILENBQU4sR0FBVXlKLEVBQVY7QUFDQXpDLE1BQUFBLEtBQUssQ0FBQy9HLENBQU4sR0FBVXlKLEVBQVY7QUFFQSxhQUFPLElBQVA7QUFFQSxLQTNDRDtBQTZDQSxHQWxEVSxFQWh2QnNCO0FBb3lCakNRLEVBQUFBLGVBQWUsRUFBRSx5QkFBV0MsSUFBWCxFQUFpQkMsS0FBakIsRUFBd0JDLEdBQXhCLEVBQTZCQyxNQUE3QixFQUFxQ0MsSUFBckMsRUFBMkNDLEdBQTNDLEVBQWlEO0FBRWpFLFFBQUtBLEdBQUcsS0FBS3ZILFNBQWIsRUFBeUI7QUFFeEJ2RixNQUFBQSxPQUFPLENBQUN3RixJQUFSLENBQWMsc0dBQWQ7QUFFQTs7QUFFRCxRQUFJakUsRUFBRSxHQUFHLEtBQUsxQixRQUFkO0FBQ0EsUUFBSXdDLENBQUMsR0FBRyxJQUFJd0ssSUFBSixJQUFhSCxLQUFLLEdBQUdELElBQXJCLENBQVI7QUFDQSxRQUFJbkssQ0FBQyxHQUFHLElBQUl1SyxJQUFKLElBQWFGLEdBQUcsR0FBR0MsTUFBbkIsQ0FBUjtBQUVBLFFBQUkzSixDQUFDLEdBQUcsQ0FBRXlKLEtBQUssR0FBR0QsSUFBVixLQUFxQkMsS0FBSyxHQUFHRCxJQUE3QixDQUFSO0FBQ0EsUUFBSXJKLENBQUMsR0FBRyxDQUFFdUosR0FBRyxHQUFHQyxNQUFSLEtBQXFCRCxHQUFHLEdBQUdDLE1BQTNCLENBQVI7QUFDQSxRQUFJdEosQ0FBQyxHQUFHLEVBQUl3SixHQUFHLEdBQUdELElBQVYsS0FBcUJDLEdBQUcsR0FBR0QsSUFBM0IsQ0FBUjtBQUNBLFFBQUl0SixDQUFDLEdBQUcsQ0FBRSxDQUFGLEdBQU11SixHQUFOLEdBQVlELElBQVosSUFBcUJDLEdBQUcsR0FBR0QsSUFBM0IsQ0FBUjtBQUVBdEwsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVYyxDQUFWO0FBQWFkLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFWO0FBQWFBLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVTBCLENBQVY7QUFBYTFCLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFYO0FBQ3ZDQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBVjtBQUFhQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVVlLENBQVY7QUFBYWYsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVNkIsQ0FBVjtBQUFhN0IsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQVg7QUFDdkNBLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFWO0FBQWFBLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFWO0FBQWFBLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVytCLENBQVg7QUFBYy9CLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBV2dDLENBQVg7QUFDeENoQyxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBVjtBQUFhQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBVjtBQUFhQSxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBRSxDQUFiO0FBQWdCQSxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBWDtBQUUxQyxXQUFPLElBQVA7QUFFQSxHQTV6QmdDO0FBOHpCakN3TCxFQUFBQSxnQkFBZ0IsRUFBRSwwQkFBV04sSUFBWCxFQUFpQkMsS0FBakIsRUFBd0JDLEdBQXhCLEVBQTZCQyxNQUE3QixFQUFxQ0MsSUFBckMsRUFBMkNDLEdBQTNDLEVBQWlEO0FBRWxFLFFBQUl2TCxFQUFFLEdBQUcsS0FBSzFCLFFBQWQ7QUFDQSxRQUFJbUwsQ0FBQyxHQUFHLE9BQVEwQixLQUFLLEdBQUdELElBQWhCLENBQVI7QUFDQSxRQUFJTyxDQUFDLEdBQUcsT0FBUUwsR0FBRyxHQUFHQyxNQUFkLENBQVI7QUFDQSxRQUFJSyxDQUFDLEdBQUcsT0FBUUgsR0FBRyxHQUFHRCxJQUFkLENBQVI7QUFFQSxRQUFJeEssQ0FBQyxHQUFHLENBQUVxSyxLQUFLLEdBQUdELElBQVYsSUFBbUJ6QixDQUEzQjtBQUNBLFFBQUkxSSxDQUFDLEdBQUcsQ0FBRXFLLEdBQUcsR0FBR0MsTUFBUixJQUFtQkksQ0FBM0I7QUFDQSxRQUFJekssQ0FBQyxHQUFHLENBQUV1SyxHQUFHLEdBQUdELElBQVIsSUFBaUJJLENBQXpCO0FBRUExTCxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsSUFBSXlKLENBQWQ7QUFBaUJ6SixJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBVjtBQUFhQSxJQUFBQSxFQUFFLENBQUUsQ0FBRixDQUFGLEdBQVUsQ0FBVjtBQUFhQSxJQUFBQSxFQUFFLENBQUUsRUFBRixDQUFGLEdBQVcsQ0FBRWMsQ0FBYjtBQUMzQ2QsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQVY7QUFBYUEsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLElBQUl5TCxDQUFkO0FBQWlCekwsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQVY7QUFBYUEsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQUVlLENBQWI7QUFDM0NmLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFWO0FBQWFBLElBQUFBLEVBQUUsQ0FBRSxDQUFGLENBQUYsR0FBVSxDQUFWO0FBQWFBLElBQUFBLEVBQUUsQ0FBRSxFQUFGLENBQUYsR0FBVyxDQUFFLENBQUYsR0FBTTBMLENBQWpCO0FBQW9CMUwsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQUVnQixDQUFiO0FBQzlDaEIsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQVY7QUFBYUEsSUFBQUEsRUFBRSxDQUFFLENBQUYsQ0FBRixHQUFVLENBQVY7QUFBYUEsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQVg7QUFBY0EsSUFBQUEsRUFBRSxDQUFFLEVBQUYsQ0FBRixHQUFXLENBQVg7QUFFeEMsV0FBTyxJQUFQO0FBRUEsR0FoMUJnQztBQWsxQmpDMkwsRUFBQUEsTUFBTSxFQUFFLGdCQUFXZixNQUFYLEVBQW9CO0FBRTNCLFFBQUk1SyxFQUFFLEdBQUcsS0FBSzFCLFFBQWQ7QUFDQSxRQUFJZ0MsRUFBRSxHQUFHc0ssTUFBTSxDQUFDdE0sUUFBaEI7O0FBRUEsU0FBTSxJQUFJa0ksQ0FBQyxHQUFHLENBQWQsRUFBaUJBLENBQUMsR0FBRyxFQUFyQixFQUF5QkEsQ0FBQyxFQUExQixFQUFnQztBQUUvQixVQUFLeEcsRUFBRSxDQUFFd0csQ0FBRixDQUFGLEtBQVlsRyxFQUFFLENBQUVrRyxDQUFGLENBQW5CLEVBQTJCLE9BQU8sS0FBUDtBQUUzQjs7QUFFRCxXQUFPLElBQVA7QUFFQSxHQS8xQmdDO0FBaTJCakNyRyxFQUFBQSxTQUFTLEVBQUUsbUJBQVd5TCxLQUFYLEVBQWtCQyxNQUFsQixFQUEyQjtBQUVyQyxRQUFLQSxNQUFNLEtBQUs3SCxTQUFoQixFQUE0QjZILE1BQU0sR0FBRyxDQUFUOztBQUU1QixTQUFNLElBQUlyRixDQUFDLEdBQUcsQ0FBZCxFQUFpQkEsQ0FBQyxHQUFHLEVBQXJCLEVBQXlCQSxDQUFDLEVBQTFCLEVBQWdDO0FBRS9CLFdBQUtsSSxRQUFMLENBQWVrSSxDQUFmLElBQXFCb0YsS0FBSyxDQUFFcEYsQ0FBQyxHQUFHcUYsTUFBTixDQUExQjtBQUVBOztBQUVELFdBQU8sSUFBUDtBQUVBLEdBNzJCZ0M7QUErMkJqQ0MsRUFBQUEsT0FBTyxFQUFFLGlCQUFXRixLQUFYLEVBQWtCQyxNQUFsQixFQUEyQjtBQUVuQyxRQUFLRCxLQUFLLEtBQUs1SCxTQUFmLEVBQTJCNEgsS0FBSyxHQUFHLEVBQVI7QUFDM0IsUUFBS0MsTUFBTSxLQUFLN0gsU0FBaEIsRUFBNEI2SCxNQUFNLEdBQUcsQ0FBVDtBQUU1QixRQUFJN0wsRUFBRSxHQUFHLEtBQUsxQixRQUFkO0FBRUFzTixJQUFBQSxLQUFLLENBQUVDLE1BQUYsQ0FBTCxHQUFrQjdMLEVBQUUsQ0FBRSxDQUFGLENBQXBCO0FBQ0E0TCxJQUFBQSxLQUFLLENBQUVDLE1BQU0sR0FBRyxDQUFYLENBQUwsR0FBc0I3TCxFQUFFLENBQUUsQ0FBRixDQUF4QjtBQUNBNEwsSUFBQUEsS0FBSyxDQUFFQyxNQUFNLEdBQUcsQ0FBWCxDQUFMLEdBQXNCN0wsRUFBRSxDQUFFLENBQUYsQ0FBeEI7QUFDQTRMLElBQUFBLEtBQUssQ0FBRUMsTUFBTSxHQUFHLENBQVgsQ0FBTCxHQUFzQjdMLEVBQUUsQ0FBRSxDQUFGLENBQXhCO0FBRUE0TCxJQUFBQSxLQUFLLENBQUVDLE1BQU0sR0FBRyxDQUFYLENBQUwsR0FBc0I3TCxFQUFFLENBQUUsQ0FBRixDQUF4QjtBQUNBNEwsSUFBQUEsS0FBSyxDQUFFQyxNQUFNLEdBQUcsQ0FBWCxDQUFMLEdBQXNCN0wsRUFBRSxDQUFFLENBQUYsQ0FBeEI7QUFDQTRMLElBQUFBLEtBQUssQ0FBRUMsTUFBTSxHQUFHLENBQVgsQ0FBTCxHQUFzQjdMLEVBQUUsQ0FBRSxDQUFGLENBQXhCO0FBQ0E0TCxJQUFBQSxLQUFLLENBQUVDLE1BQU0sR0FBRyxDQUFYLENBQUwsR0FBc0I3TCxFQUFFLENBQUUsQ0FBRixDQUF4QjtBQUVBNEwsSUFBQUEsS0FBSyxDQUFFQyxNQUFNLEdBQUcsQ0FBWCxDQUFMLEdBQXNCN0wsRUFBRSxDQUFFLENBQUYsQ0FBeEI7QUFDQTRMLElBQUFBLEtBQUssQ0FBRUMsTUFBTSxHQUFHLENBQVgsQ0FBTCxHQUFzQjdMLEVBQUUsQ0FBRSxDQUFGLENBQXhCO0FBQ0E0TCxJQUFBQSxLQUFLLENBQUVDLE1BQU0sR0FBRyxFQUFYLENBQUwsR0FBdUI3TCxFQUFFLENBQUUsRUFBRixDQUF6QjtBQUNBNEwsSUFBQUEsS0FBSyxDQUFFQyxNQUFNLEdBQUcsRUFBWCxDQUFMLEdBQXVCN0wsRUFBRSxDQUFFLEVBQUYsQ0FBekI7QUFFQTRMLElBQUFBLEtBQUssQ0FBRUMsTUFBTSxHQUFHLEVBQVgsQ0FBTCxHQUF1QjdMLEVBQUUsQ0FBRSxFQUFGLENBQXpCO0FBQ0E0TCxJQUFBQSxLQUFLLENBQUVDLE1BQU0sR0FBRyxFQUFYLENBQUwsR0FBdUI3TCxFQUFFLENBQUUsRUFBRixDQUF6QjtBQUNBNEwsSUFBQUEsS0FBSyxDQUFFQyxNQUFNLEdBQUcsRUFBWCxDQUFMLEdBQXVCN0wsRUFBRSxDQUFFLEVBQUYsQ0FBekI7QUFDQTRMLElBQUFBLEtBQUssQ0FBRUMsTUFBTSxHQUFHLEVBQVgsQ0FBTCxHQUF1QjdMLEVBQUUsQ0FBRSxFQUFGLENBQXpCO0FBRUEsV0FBTzRMLEtBQVA7QUFFQTtBQTU0QmdDLENBQWxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmVjdG9yMyB9IGZyb20gJy4vVmVjdG9yMy5qcyc7XG5cbi8qKlxuICogQGF1dGhvciBtcmRvb2IgLyBodHRwOi8vbXJkb29iLmNvbS9cbiAqIEBhdXRob3Igc3VwZXJlZ2diZXJ0IC8gaHR0cDovL3d3dy5wYXVsYnJ1bnQuY28udWsvXG4gKiBAYXV0aG9yIHBoaWxvZ2IgLyBodHRwOi8vYmxvZy50aGVqaXQub3JnL1xuICogQGF1dGhvciBqb3JkaV9yb3MgLyBodHRwOi8vcGxhdHRzb2Z0LmNvbVxuICogQGF1dGhvciBEMXBsbzFkIC8gaHR0cDovL2dpdGh1Yi5jb20vRDFwbG8xZFxuICogQGF1dGhvciBhbHRlcmVkcSAvIGh0dHA6Ly9hbHRlcmVkcXVhbGlhLmNvbS9cbiAqIEBhdXRob3IgbWlrYWVsIGVtdGluZ2VyIC8gaHR0cDovL2dvbW8uc2UvXG4gKiBAYXV0aG9yIHRpbWtuaXAgLyBodHRwOi8vd3d3LmZsb29ycGxhbm5lci5jb20vXG4gKiBAYXV0aG9yIGJob3VzdG9uIC8gaHR0cDovL2NsYXJhLmlvXG4gKiBAYXV0aG9yIFdlc3RMYW5nbGV5IC8gaHR0cDovL2dpdGh1Yi5jb20vV2VzdExhbmdsZXlcbiAqL1xuXG5mdW5jdGlvbiBNYXRyaXg0KCkge1xuXG5cdHRoaXMuZWxlbWVudHMgPSBbXG5cblx0XHQxLCAwLCAwLCAwLFxuXHRcdDAsIDEsIDAsIDAsXG5cdFx0MCwgMCwgMSwgMCxcblx0XHQwLCAwLCAwLCAxXG5cblx0XTtcblxuXHRpZiAoIGFyZ3VtZW50cy5sZW5ndGggPiAwICkge1xuXG5cdFx0Y29uc29sZS5lcnJvciggJ1RIUkVFLk1hdHJpeDQ6IHRoZSBjb25zdHJ1Y3RvciBubyBsb25nZXIgcmVhZHMgYXJndW1lbnRzLiB1c2UgLnNldCgpIGluc3RlYWQuJyApO1xuXG5cdH1cblxufVxuXG5PYmplY3QuYXNzaWduKCBNYXRyaXg0LnByb3RvdHlwZSwge1xuXG5cdGlzTWF0cml4NDogdHJ1ZSxcblxuXHRzZXQ6IGZ1bmN0aW9uICggbjExLCBuMTIsIG4xMywgbjE0LCBuMjEsIG4yMiwgbjIzLCBuMjQsIG4zMSwgbjMyLCBuMzMsIG4zNCwgbjQxLCBuNDIsIG40MywgbjQ0ICkge1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblxuXHRcdHRlWyAwIF0gPSBuMTE7IHRlWyA0IF0gPSBuMTI7IHRlWyA4IF0gPSBuMTM7IHRlWyAxMiBdID0gbjE0O1xuXHRcdHRlWyAxIF0gPSBuMjE7IHRlWyA1IF0gPSBuMjI7IHRlWyA5IF0gPSBuMjM7IHRlWyAxMyBdID0gbjI0O1xuXHRcdHRlWyAyIF0gPSBuMzE7IHRlWyA2IF0gPSBuMzI7IHRlWyAxMCBdID0gbjMzOyB0ZVsgMTQgXSA9IG4zNDtcblx0XHR0ZVsgMyBdID0gbjQxOyB0ZVsgNyBdID0gbjQyOyB0ZVsgMTEgXSA9IG40MzsgdGVbIDE1IF0gPSBuNDQ7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGlkZW50aXR5OiBmdW5jdGlvbiAoKSB7XG5cblx0XHR0aGlzLnNldChcblxuXHRcdFx0MSwgMCwgMCwgMCxcblx0XHRcdDAsIDEsIDAsIDAsXG5cdFx0XHQwLCAwLCAxLCAwLFxuXHRcdFx0MCwgMCwgMCwgMVxuXG5cdFx0KTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0Y2xvbmU6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHJldHVybiBuZXcgTWF0cml4NCgpLmZyb21BcnJheSggdGhpcy5lbGVtZW50cyApO1xuXG5cdH0sXG5cblx0Y29weTogZnVuY3Rpb24gKCBtICkge1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblx0XHR2YXIgbWUgPSBtLmVsZW1lbnRzO1xuXG5cdFx0dGVbIDAgXSA9IG1lWyAwIF07IHRlWyAxIF0gPSBtZVsgMSBdOyB0ZVsgMiBdID0gbWVbIDIgXTsgdGVbIDMgXSA9IG1lWyAzIF07XG5cdFx0dGVbIDQgXSA9IG1lWyA0IF07IHRlWyA1IF0gPSBtZVsgNSBdOyB0ZVsgNiBdID0gbWVbIDYgXTsgdGVbIDcgXSA9IG1lWyA3IF07XG5cdFx0dGVbIDggXSA9IG1lWyA4IF07IHRlWyA5IF0gPSBtZVsgOSBdOyB0ZVsgMTAgXSA9IG1lWyAxMCBdOyB0ZVsgMTEgXSA9IG1lWyAxMSBdO1xuXHRcdHRlWyAxMiBdID0gbWVbIDEyIF07IHRlWyAxMyBdID0gbWVbIDEzIF07IHRlWyAxNCBdID0gbWVbIDE0IF07IHRlWyAxNSBdID0gbWVbIDE1IF07XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGNvcHlQb3NpdGlvbjogZnVuY3Rpb24gKCBtICkge1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cywgbWUgPSBtLmVsZW1lbnRzO1xuXG5cdFx0dGVbIDEyIF0gPSBtZVsgMTIgXTtcblx0XHR0ZVsgMTMgXSA9IG1lWyAxMyBdO1xuXHRcdHRlWyAxNCBdID0gbWVbIDE0IF07XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGV4dHJhY3RCYXNpczogZnVuY3Rpb24gKCB4QXhpcywgeUF4aXMsIHpBeGlzICkge1xuXG5cdFx0eEF4aXMuc2V0RnJvbU1hdHJpeENvbHVtbiggdGhpcywgMCApO1xuXHRcdHlBeGlzLnNldEZyb21NYXRyaXhDb2x1bW4oIHRoaXMsIDEgKTtcblx0XHR6QXhpcy5zZXRGcm9tTWF0cml4Q29sdW1uKCB0aGlzLCAyICk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdG1ha2VCYXNpczogZnVuY3Rpb24gKCB4QXhpcywgeUF4aXMsIHpBeGlzICkge1xuXG5cdFx0dGhpcy5zZXQoXG5cdFx0XHR4QXhpcy54LCB5QXhpcy54LCB6QXhpcy54LCAwLFxuXHRcdFx0eEF4aXMueSwgeUF4aXMueSwgekF4aXMueSwgMCxcblx0XHRcdHhBeGlzLnosIHlBeGlzLnosIHpBeGlzLnosIDAsXG5cdFx0XHQwLCAwLCAwLCAxXG5cdFx0KTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0ZXh0cmFjdFJvdGF0aW9uOiBmdW5jdGlvbiAoKSB7XG5cblx0XHR2YXIgdjEgPSBuZXcgVmVjdG9yMygpO1xuXG5cdFx0cmV0dXJuIGZ1bmN0aW9uIGV4dHJhY3RSb3RhdGlvbiggbSApIHtcblxuXHRcdFx0Ly8gdGhpcyBtZXRob2QgZG9lcyBub3Qgc3VwcG9ydCByZWZsZWN0aW9uIG1hdHJpY2VzXG5cblx0XHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cdFx0XHR2YXIgbWUgPSBtLmVsZW1lbnRzO1xuXG5cdFx0XHR2YXIgc2NhbGVYID0gMSAvIHYxLnNldEZyb21NYXRyaXhDb2x1bW4oIG0sIDAgKS5sZW5ndGgoKTtcblx0XHRcdHZhciBzY2FsZVkgPSAxIC8gdjEuc2V0RnJvbU1hdHJpeENvbHVtbiggbSwgMSApLmxlbmd0aCgpO1xuXHRcdFx0dmFyIHNjYWxlWiA9IDEgLyB2MS5zZXRGcm9tTWF0cml4Q29sdW1uKCBtLCAyICkubGVuZ3RoKCk7XG5cblx0XHRcdHRlWyAwIF0gPSBtZVsgMCBdICogc2NhbGVYO1xuXHRcdFx0dGVbIDEgXSA9IG1lWyAxIF0gKiBzY2FsZVg7XG5cdFx0XHR0ZVsgMiBdID0gbWVbIDIgXSAqIHNjYWxlWDtcblx0XHRcdHRlWyAzIF0gPSAwO1xuXG5cdFx0XHR0ZVsgNCBdID0gbWVbIDQgXSAqIHNjYWxlWTtcblx0XHRcdHRlWyA1IF0gPSBtZVsgNSBdICogc2NhbGVZO1xuXHRcdFx0dGVbIDYgXSA9IG1lWyA2IF0gKiBzY2FsZVk7XG5cdFx0XHR0ZVsgNyBdID0gMDtcblxuXHRcdFx0dGVbIDggXSA9IG1lWyA4IF0gKiBzY2FsZVo7XG5cdFx0XHR0ZVsgOSBdID0gbWVbIDkgXSAqIHNjYWxlWjtcblx0XHRcdHRlWyAxMCBdID0gbWVbIDEwIF0gKiBzY2FsZVo7XG5cdFx0XHR0ZVsgMTEgXSA9IDA7XG5cblx0XHRcdHRlWyAxMiBdID0gMDtcblx0XHRcdHRlWyAxMyBdID0gMDtcblx0XHRcdHRlWyAxNCBdID0gMDtcblx0XHRcdHRlWyAxNSBdID0gMTtcblxuXHRcdFx0cmV0dXJuIHRoaXM7XG5cblx0XHR9O1xuXG5cdH0oKSxcblxuXHRtYWtlUm90YXRpb25Gcm9tRXVsZXI6IGZ1bmN0aW9uICggZXVsZXIgKSB7XG5cblx0XHRpZiAoICEgKCBldWxlciAmJiBldWxlci5pc0V1bGVyICkgKSB7XG5cblx0XHRcdGNvbnNvbGUuZXJyb3IoICdUSFJFRS5NYXRyaXg0OiAubWFrZVJvdGF0aW9uRnJvbUV1bGVyKCkgbm93IGV4cGVjdHMgYSBFdWxlciByb3RhdGlvbiByYXRoZXIgdGhhbiBhIFZlY3RvcjMgYW5kIG9yZGVyLicgKTtcblxuXHRcdH1cblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cblx0XHR2YXIgeCA9IGV1bGVyLngsIHkgPSBldWxlci55LCB6ID0gZXVsZXIuejtcblx0XHR2YXIgYSA9IE1hdGguY29zKCB4ICksIGIgPSBNYXRoLnNpbiggeCApO1xuXHRcdHZhciBjID0gTWF0aC5jb3MoIHkgKSwgZCA9IE1hdGguc2luKCB5ICk7XG5cdFx0dmFyIGUgPSBNYXRoLmNvcyggeiApLCBmID0gTWF0aC5zaW4oIHogKTtcblxuXHRcdGlmICggZXVsZXIub3JkZXIgPT09ICdYWVonICkge1xuXG5cdFx0XHR2YXIgYWUgPSBhICogZSwgYWYgPSBhICogZiwgYmUgPSBiICogZSwgYmYgPSBiICogZjtcblxuXHRcdFx0dGVbIDAgXSA9IGMgKiBlO1xuXHRcdFx0dGVbIDQgXSA9IC0gYyAqIGY7XG5cdFx0XHR0ZVsgOCBdID0gZDtcblxuXHRcdFx0dGVbIDEgXSA9IGFmICsgYmUgKiBkO1xuXHRcdFx0dGVbIDUgXSA9IGFlIC0gYmYgKiBkO1xuXHRcdFx0dGVbIDkgXSA9IC0gYiAqIGM7XG5cblx0XHRcdHRlWyAyIF0gPSBiZiAtIGFlICogZDtcblx0XHRcdHRlWyA2IF0gPSBiZSArIGFmICogZDtcblx0XHRcdHRlWyAxMCBdID0gYSAqIGM7XG5cblx0XHR9IGVsc2UgaWYgKCBldWxlci5vcmRlciA9PT0gJ1lYWicgKSB7XG5cblx0XHRcdHZhciBjZSA9IGMgKiBlLCBjZiA9IGMgKiBmLCBkZSA9IGQgKiBlLCBkZiA9IGQgKiBmO1xuXG5cdFx0XHR0ZVsgMCBdID0gY2UgKyBkZiAqIGI7XG5cdFx0XHR0ZVsgNCBdID0gZGUgKiBiIC0gY2Y7XG5cdFx0XHR0ZVsgOCBdID0gYSAqIGQ7XG5cblx0XHRcdHRlWyAxIF0gPSBhICogZjtcblx0XHRcdHRlWyA1IF0gPSBhICogZTtcblx0XHRcdHRlWyA5IF0gPSAtIGI7XG5cblx0XHRcdHRlWyAyIF0gPSBjZiAqIGIgLSBkZTtcblx0XHRcdHRlWyA2IF0gPSBkZiArIGNlICogYjtcblx0XHRcdHRlWyAxMCBdID0gYSAqIGM7XG5cblx0XHR9IGVsc2UgaWYgKCBldWxlci5vcmRlciA9PT0gJ1pYWScgKSB7XG5cblx0XHRcdHZhciBjZSA9IGMgKiBlLCBjZiA9IGMgKiBmLCBkZSA9IGQgKiBlLCBkZiA9IGQgKiBmO1xuXG5cdFx0XHR0ZVsgMCBdID0gY2UgLSBkZiAqIGI7XG5cdFx0XHR0ZVsgNCBdID0gLSBhICogZjtcblx0XHRcdHRlWyA4IF0gPSBkZSArIGNmICogYjtcblxuXHRcdFx0dGVbIDEgXSA9IGNmICsgZGUgKiBiO1xuXHRcdFx0dGVbIDUgXSA9IGEgKiBlO1xuXHRcdFx0dGVbIDkgXSA9IGRmIC0gY2UgKiBiO1xuXG5cdFx0XHR0ZVsgMiBdID0gLSBhICogZDtcblx0XHRcdHRlWyA2IF0gPSBiO1xuXHRcdFx0dGVbIDEwIF0gPSBhICogYztcblxuXHRcdH0gZWxzZSBpZiAoIGV1bGVyLm9yZGVyID09PSAnWllYJyApIHtcblxuXHRcdFx0dmFyIGFlID0gYSAqIGUsIGFmID0gYSAqIGYsIGJlID0gYiAqIGUsIGJmID0gYiAqIGY7XG5cblx0XHRcdHRlWyAwIF0gPSBjICogZTtcblx0XHRcdHRlWyA0IF0gPSBiZSAqIGQgLSBhZjtcblx0XHRcdHRlWyA4IF0gPSBhZSAqIGQgKyBiZjtcblxuXHRcdFx0dGVbIDEgXSA9IGMgKiBmO1xuXHRcdFx0dGVbIDUgXSA9IGJmICogZCArIGFlO1xuXHRcdFx0dGVbIDkgXSA9IGFmICogZCAtIGJlO1xuXG5cdFx0XHR0ZVsgMiBdID0gLSBkO1xuXHRcdFx0dGVbIDYgXSA9IGIgKiBjO1xuXHRcdFx0dGVbIDEwIF0gPSBhICogYztcblxuXHRcdH0gZWxzZSBpZiAoIGV1bGVyLm9yZGVyID09PSAnWVpYJyApIHtcblxuXHRcdFx0dmFyIGFjID0gYSAqIGMsIGFkID0gYSAqIGQsIGJjID0gYiAqIGMsIGJkID0gYiAqIGQ7XG5cblx0XHRcdHRlWyAwIF0gPSBjICogZTtcblx0XHRcdHRlWyA0IF0gPSBiZCAtIGFjICogZjtcblx0XHRcdHRlWyA4IF0gPSBiYyAqIGYgKyBhZDtcblxuXHRcdFx0dGVbIDEgXSA9IGY7XG5cdFx0XHR0ZVsgNSBdID0gYSAqIGU7XG5cdFx0XHR0ZVsgOSBdID0gLSBiICogZTtcblxuXHRcdFx0dGVbIDIgXSA9IC0gZCAqIGU7XG5cdFx0XHR0ZVsgNiBdID0gYWQgKiBmICsgYmM7XG5cdFx0XHR0ZVsgMTAgXSA9IGFjIC0gYmQgKiBmO1xuXG5cdFx0fSBlbHNlIGlmICggZXVsZXIub3JkZXIgPT09ICdYWlknICkge1xuXG5cdFx0XHR2YXIgYWMgPSBhICogYywgYWQgPSBhICogZCwgYmMgPSBiICogYywgYmQgPSBiICogZDtcblxuXHRcdFx0dGVbIDAgXSA9IGMgKiBlO1xuXHRcdFx0dGVbIDQgXSA9IC0gZjtcblx0XHRcdHRlWyA4IF0gPSBkICogZTtcblxuXHRcdFx0dGVbIDEgXSA9IGFjICogZiArIGJkO1xuXHRcdFx0dGVbIDUgXSA9IGEgKiBlO1xuXHRcdFx0dGVbIDkgXSA9IGFkICogZiAtIGJjO1xuXG5cdFx0XHR0ZVsgMiBdID0gYmMgKiBmIC0gYWQ7XG5cdFx0XHR0ZVsgNiBdID0gYiAqIGU7XG5cdFx0XHR0ZVsgMTAgXSA9IGJkICogZiArIGFjO1xuXG5cdFx0fVxuXG5cdFx0Ly8gYm90dG9tIHJvd1xuXHRcdHRlWyAzIF0gPSAwO1xuXHRcdHRlWyA3IF0gPSAwO1xuXHRcdHRlWyAxMSBdID0gMDtcblxuXHRcdC8vIGxhc3QgY29sdW1uXG5cdFx0dGVbIDEyIF0gPSAwO1xuXHRcdHRlWyAxMyBdID0gMDtcblx0XHR0ZVsgMTQgXSA9IDA7XG5cdFx0dGVbIDE1IF0gPSAxO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRtYWtlUm90YXRpb25Gcm9tUXVhdGVybmlvbjogZnVuY3Rpb24gKCkge1xuXG5cdFx0dmFyIHplcm8gPSBuZXcgVmVjdG9yMyggMCwgMCwgMCApO1xuXHRcdHZhciBvbmUgPSBuZXcgVmVjdG9yMyggMSwgMSwgMSApO1xuXG5cdFx0cmV0dXJuIGZ1bmN0aW9uIG1ha2VSb3RhdGlvbkZyb21RdWF0ZXJuaW9uKCBxICkge1xuXG5cdFx0XHRyZXR1cm4gdGhpcy5jb21wb3NlKCB6ZXJvLCBxLCBvbmUgKTtcblxuXHRcdH07XG5cblx0fSgpLFxuXG5cdGxvb2tBdDogZnVuY3Rpb24gKCkge1xuXG5cdFx0dmFyIHggPSBuZXcgVmVjdG9yMygpO1xuXHRcdHZhciB5ID0gbmV3IFZlY3RvcjMoKTtcblx0XHR2YXIgeiA9IG5ldyBWZWN0b3IzKCk7XG5cblx0XHRyZXR1cm4gZnVuY3Rpb24gbG9va0F0KCBleWUsIHRhcmdldCwgdXAgKSB7XG5cblx0XHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cblx0XHRcdHouc3ViVmVjdG9ycyggZXllLCB0YXJnZXQgKTtcblxuXHRcdFx0aWYgKCB6Lmxlbmd0aFNxKCkgPT09IDAgKSB7XG5cblx0XHRcdFx0Ly8gZXllIGFuZCB0YXJnZXQgYXJlIGluIHRoZSBzYW1lIHBvc2l0aW9uXG5cblx0XHRcdFx0ei56ID0gMTtcblxuXHRcdFx0fVxuXG5cdFx0XHR6Lm5vcm1hbGl6ZSgpO1xuXHRcdFx0eC5jcm9zc1ZlY3RvcnMoIHVwLCB6ICk7XG5cblx0XHRcdGlmICggeC5sZW5ndGhTcSgpID09PSAwICkge1xuXG5cdFx0XHRcdC8vIHVwIGFuZCB6IGFyZSBwYXJhbGxlbFxuXG5cdFx0XHRcdGlmICggTWF0aC5hYnMoIHVwLnogKSA9PT0gMSApIHtcblxuXHRcdFx0XHRcdHoueCArPSAwLjAwMDE7XG5cblx0XHRcdFx0fSBlbHNlIHtcblxuXHRcdFx0XHRcdHoueiArPSAwLjAwMDE7XG5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHoubm9ybWFsaXplKCk7XG5cdFx0XHRcdHguY3Jvc3NWZWN0b3JzKCB1cCwgeiApO1xuXG5cdFx0XHR9XG5cblx0XHRcdHgubm9ybWFsaXplKCk7XG5cdFx0XHR5LmNyb3NzVmVjdG9ycyggeiwgeCApO1xuXG5cdFx0XHR0ZVsgMCBdID0geC54OyB0ZVsgNCBdID0geS54OyB0ZVsgOCBdID0gei54O1xuXHRcdFx0dGVbIDEgXSA9IHgueTsgdGVbIDUgXSA9IHkueTsgdGVbIDkgXSA9IHoueTtcblx0XHRcdHRlWyAyIF0gPSB4Lno7IHRlWyA2IF0gPSB5Lno7IHRlWyAxMCBdID0gei56O1xuXG5cdFx0XHRyZXR1cm4gdGhpcztcblxuXHRcdH07XG5cblx0fSgpLFxuXG5cdG11bHRpcGx5OiBmdW5jdGlvbiAoIG0sIG4gKSB7XG5cblx0XHRpZiAoIG4gIT09IHVuZGVmaW5lZCApIHtcblxuXHRcdFx0Y29uc29sZS53YXJuKCAnVEhSRUUuTWF0cml4NDogLm11bHRpcGx5KCkgbm93IG9ubHkgYWNjZXB0cyBvbmUgYXJndW1lbnQuIFVzZSAubXVsdGlwbHlNYXRyaWNlcyggYSwgYiApIGluc3RlYWQuJyApO1xuXHRcdFx0cmV0dXJuIHRoaXMubXVsdGlwbHlNYXRyaWNlcyggbSwgbiApO1xuXG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXMubXVsdGlwbHlNYXRyaWNlcyggdGhpcywgbSApO1xuXG5cdH0sXG5cblx0cHJlbXVsdGlwbHk6IGZ1bmN0aW9uICggbSApIHtcblxuXHRcdHJldHVybiB0aGlzLm11bHRpcGx5TWF0cmljZXMoIG0sIHRoaXMgKTtcblxuXHR9LFxuXG5cdG11bHRpcGx5TWF0cmljZXM6IGZ1bmN0aW9uICggYSwgYiApIHtcblxuXHRcdHZhciBhZSA9IGEuZWxlbWVudHM7XG5cdFx0dmFyIGJlID0gYi5lbGVtZW50cztcblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXG5cdFx0dmFyIGExMSA9IGFlWyAwIF0sIGExMiA9IGFlWyA0IF0sIGExMyA9IGFlWyA4IF0sIGExNCA9IGFlWyAxMiBdO1xuXHRcdHZhciBhMjEgPSBhZVsgMSBdLCBhMjIgPSBhZVsgNSBdLCBhMjMgPSBhZVsgOSBdLCBhMjQgPSBhZVsgMTMgXTtcblx0XHR2YXIgYTMxID0gYWVbIDIgXSwgYTMyID0gYWVbIDYgXSwgYTMzID0gYWVbIDEwIF0sIGEzNCA9IGFlWyAxNCBdO1xuXHRcdHZhciBhNDEgPSBhZVsgMyBdLCBhNDIgPSBhZVsgNyBdLCBhNDMgPSBhZVsgMTEgXSwgYTQ0ID0gYWVbIDE1IF07XG5cblx0XHR2YXIgYjExID0gYmVbIDAgXSwgYjEyID0gYmVbIDQgXSwgYjEzID0gYmVbIDggXSwgYjE0ID0gYmVbIDEyIF07XG5cdFx0dmFyIGIyMSA9IGJlWyAxIF0sIGIyMiA9IGJlWyA1IF0sIGIyMyA9IGJlWyA5IF0sIGIyNCA9IGJlWyAxMyBdO1xuXHRcdHZhciBiMzEgPSBiZVsgMiBdLCBiMzIgPSBiZVsgNiBdLCBiMzMgPSBiZVsgMTAgXSwgYjM0ID0gYmVbIDE0IF07XG5cdFx0dmFyIGI0MSA9IGJlWyAzIF0sIGI0MiA9IGJlWyA3IF0sIGI0MyA9IGJlWyAxMSBdLCBiNDQgPSBiZVsgMTUgXTtcblxuXHRcdHRlWyAwIF0gPSBhMTEgKiBiMTEgKyBhMTIgKiBiMjEgKyBhMTMgKiBiMzEgKyBhMTQgKiBiNDE7XG5cdFx0dGVbIDQgXSA9IGExMSAqIGIxMiArIGExMiAqIGIyMiArIGExMyAqIGIzMiArIGExNCAqIGI0Mjtcblx0XHR0ZVsgOCBdID0gYTExICogYjEzICsgYTEyICogYjIzICsgYTEzICogYjMzICsgYTE0ICogYjQzO1xuXHRcdHRlWyAxMiBdID0gYTExICogYjE0ICsgYTEyICogYjI0ICsgYTEzICogYjM0ICsgYTE0ICogYjQ0O1xuXG5cdFx0dGVbIDEgXSA9IGEyMSAqIGIxMSArIGEyMiAqIGIyMSArIGEyMyAqIGIzMSArIGEyNCAqIGI0MTtcblx0XHR0ZVsgNSBdID0gYTIxICogYjEyICsgYTIyICogYjIyICsgYTIzICogYjMyICsgYTI0ICogYjQyO1xuXHRcdHRlWyA5IF0gPSBhMjEgKiBiMTMgKyBhMjIgKiBiMjMgKyBhMjMgKiBiMzMgKyBhMjQgKiBiNDM7XG5cdFx0dGVbIDEzIF0gPSBhMjEgKiBiMTQgKyBhMjIgKiBiMjQgKyBhMjMgKiBiMzQgKyBhMjQgKiBiNDQ7XG5cblx0XHR0ZVsgMiBdID0gYTMxICogYjExICsgYTMyICogYjIxICsgYTMzICogYjMxICsgYTM0ICogYjQxO1xuXHRcdHRlWyA2IF0gPSBhMzEgKiBiMTIgKyBhMzIgKiBiMjIgKyBhMzMgKiBiMzIgKyBhMzQgKiBiNDI7XG5cdFx0dGVbIDEwIF0gPSBhMzEgKiBiMTMgKyBhMzIgKiBiMjMgKyBhMzMgKiBiMzMgKyBhMzQgKiBiNDM7XG5cdFx0dGVbIDE0IF0gPSBhMzEgKiBiMTQgKyBhMzIgKiBiMjQgKyBhMzMgKiBiMzQgKyBhMzQgKiBiNDQ7XG5cblx0XHR0ZVsgMyBdID0gYTQxICogYjExICsgYTQyICogYjIxICsgYTQzICogYjMxICsgYTQ0ICogYjQxO1xuXHRcdHRlWyA3IF0gPSBhNDEgKiBiMTIgKyBhNDIgKiBiMjIgKyBhNDMgKiBiMzIgKyBhNDQgKiBiNDI7XG5cdFx0dGVbIDExIF0gPSBhNDEgKiBiMTMgKyBhNDIgKiBiMjMgKyBhNDMgKiBiMzMgKyBhNDQgKiBiNDM7XG5cdFx0dGVbIDE1IF0gPSBhNDEgKiBiMTQgKyBhNDIgKiBiMjQgKyBhNDMgKiBiMzQgKyBhNDQgKiBiNDQ7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdG11bHRpcGx5U2NhbGFyOiBmdW5jdGlvbiAoIHMgKSB7XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXG5cdFx0dGVbIDAgXSAqPSBzOyB0ZVsgNCBdICo9IHM7IHRlWyA4IF0gKj0gczsgdGVbIDEyIF0gKj0gcztcblx0XHR0ZVsgMSBdICo9IHM7IHRlWyA1IF0gKj0gczsgdGVbIDkgXSAqPSBzOyB0ZVsgMTMgXSAqPSBzO1xuXHRcdHRlWyAyIF0gKj0gczsgdGVbIDYgXSAqPSBzOyB0ZVsgMTAgXSAqPSBzOyB0ZVsgMTQgXSAqPSBzO1xuXHRcdHRlWyAzIF0gKj0gczsgdGVbIDcgXSAqPSBzOyB0ZVsgMTEgXSAqPSBzOyB0ZVsgMTUgXSAqPSBzO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRhcHBseVRvQnVmZmVyQXR0cmlidXRlOiBmdW5jdGlvbiAoKSB7XG5cblx0XHR2YXIgdjEgPSBuZXcgVmVjdG9yMygpO1xuXG5cdFx0cmV0dXJuIGZ1bmN0aW9uIGFwcGx5VG9CdWZmZXJBdHRyaWJ1dGUoIGF0dHJpYnV0ZSApIHtcblxuXHRcdFx0Zm9yICggdmFyIGkgPSAwLCBsID0gYXR0cmlidXRlLmNvdW50OyBpIDwgbDsgaSArKyApIHtcblxuXHRcdFx0XHR2MS54ID0gYXR0cmlidXRlLmdldFgoIGkgKTtcblx0XHRcdFx0djEueSA9IGF0dHJpYnV0ZS5nZXRZKCBpICk7XG5cdFx0XHRcdHYxLnogPSBhdHRyaWJ1dGUuZ2V0WiggaSApO1xuXG5cdFx0XHRcdHYxLmFwcGx5TWF0cml4NCggdGhpcyApO1xuXG5cdFx0XHRcdGF0dHJpYnV0ZS5zZXRYWVooIGksIHYxLngsIHYxLnksIHYxLnogKTtcblxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gYXR0cmlidXRlO1xuXG5cdFx0fTtcblxuXHR9KCksXG5cblx0ZGV0ZXJtaW5hbnQ6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cblx0XHR2YXIgbjExID0gdGVbIDAgXSwgbjEyID0gdGVbIDQgXSwgbjEzID0gdGVbIDggXSwgbjE0ID0gdGVbIDEyIF07XG5cdFx0dmFyIG4yMSA9IHRlWyAxIF0sIG4yMiA9IHRlWyA1IF0sIG4yMyA9IHRlWyA5IF0sIG4yNCA9IHRlWyAxMyBdO1xuXHRcdHZhciBuMzEgPSB0ZVsgMiBdLCBuMzIgPSB0ZVsgNiBdLCBuMzMgPSB0ZVsgMTAgXSwgbjM0ID0gdGVbIDE0IF07XG5cdFx0dmFyIG40MSA9IHRlWyAzIF0sIG40MiA9IHRlWyA3IF0sIG40MyA9IHRlWyAxMSBdLCBuNDQgPSB0ZVsgMTUgXTtcblxuXHRcdC8vVE9ETzogbWFrZSB0aGlzIG1vcmUgZWZmaWNpZW50XG5cdFx0Ly8oIGJhc2VkIG9uIGh0dHA6Ly93d3cuZXVjbGlkZWFuc3BhY2UuY29tL21hdGhzL2FsZ2VicmEvbWF0cml4L2Z1bmN0aW9ucy9pbnZlcnNlL2ZvdXJEL2luZGV4Lmh0bSApXG5cblx0XHRyZXR1cm4gKFxuXHRcdFx0bjQxICogKFxuXHRcdFx0XHQrIG4xNCAqIG4yMyAqIG4zMlxuXHRcdFx0XHQgLSBuMTMgKiBuMjQgKiBuMzJcblx0XHRcdFx0IC0gbjE0ICogbjIyICogbjMzXG5cdFx0XHRcdCArIG4xMiAqIG4yNCAqIG4zM1xuXHRcdFx0XHQgKyBuMTMgKiBuMjIgKiBuMzRcblx0XHRcdFx0IC0gbjEyICogbjIzICogbjM0XG5cdFx0XHQpICtcblx0XHRcdG40MiAqIChcblx0XHRcdFx0KyBuMTEgKiBuMjMgKiBuMzRcblx0XHRcdFx0IC0gbjExICogbjI0ICogbjMzXG5cdFx0XHRcdCArIG4xNCAqIG4yMSAqIG4zM1xuXHRcdFx0XHQgLSBuMTMgKiBuMjEgKiBuMzRcblx0XHRcdFx0ICsgbjEzICogbjI0ICogbjMxXG5cdFx0XHRcdCAtIG4xNCAqIG4yMyAqIG4zMVxuXHRcdFx0KSArXG5cdFx0XHRuNDMgKiAoXG5cdFx0XHRcdCsgbjExICogbjI0ICogbjMyXG5cdFx0XHRcdCAtIG4xMSAqIG4yMiAqIG4zNFxuXHRcdFx0XHQgLSBuMTQgKiBuMjEgKiBuMzJcblx0XHRcdFx0ICsgbjEyICogbjIxICogbjM0XG5cdFx0XHRcdCArIG4xNCAqIG4yMiAqIG4zMVxuXHRcdFx0XHQgLSBuMTIgKiBuMjQgKiBuMzFcblx0XHRcdCkgK1xuXHRcdFx0bjQ0ICogKFxuXHRcdFx0XHQtIG4xMyAqIG4yMiAqIG4zMVxuXHRcdFx0XHQgLSBuMTEgKiBuMjMgKiBuMzJcblx0XHRcdFx0ICsgbjExICogbjIyICogbjMzXG5cdFx0XHRcdCArIG4xMyAqIG4yMSAqIG4zMlxuXHRcdFx0XHQgLSBuMTIgKiBuMjEgKiBuMzNcblx0XHRcdFx0ICsgbjEyICogbjIzICogbjMxXG5cdFx0XHQpXG5cblx0XHQpO1xuXG5cdH0sXG5cblx0dHJhbnNwb3NlOiBmdW5jdGlvbiAoKSB7XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXHRcdHZhciB0bXA7XG5cblx0XHR0bXAgPSB0ZVsgMSBdOyB0ZVsgMSBdID0gdGVbIDQgXTsgdGVbIDQgXSA9IHRtcDtcblx0XHR0bXAgPSB0ZVsgMiBdOyB0ZVsgMiBdID0gdGVbIDggXTsgdGVbIDggXSA9IHRtcDtcblx0XHR0bXAgPSB0ZVsgNiBdOyB0ZVsgNiBdID0gdGVbIDkgXTsgdGVbIDkgXSA9IHRtcDtcblxuXHRcdHRtcCA9IHRlWyAzIF07IHRlWyAzIF0gPSB0ZVsgMTIgXTsgdGVbIDEyIF0gPSB0bXA7XG5cdFx0dG1wID0gdGVbIDcgXTsgdGVbIDcgXSA9IHRlWyAxMyBdOyB0ZVsgMTMgXSA9IHRtcDtcblx0XHR0bXAgPSB0ZVsgMTEgXTsgdGVbIDExIF0gPSB0ZVsgMTQgXTsgdGVbIDE0IF0gPSB0bXA7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdHNldFBvc2l0aW9uOiBmdW5jdGlvbiAoIHgsIHksIHogKSB7XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXG5cdFx0aWYgKCB4LmlzVmVjdG9yMyApIHtcblxuXHRcdFx0dGVbIDEyIF0gPSB4Lng7XG5cdFx0XHR0ZVsgMTMgXSA9IHgueTtcblx0XHRcdHRlWyAxNCBdID0geC56O1xuXG5cdFx0fSBlbHNlIHtcblxuXHRcdFx0dGVbIDEyIF0gPSB4O1xuXHRcdFx0dGVbIDEzIF0gPSB5O1xuXHRcdFx0dGVbIDE0IF0gPSB6O1xuXG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRnZXRJbnZlcnNlOiBmdW5jdGlvbiAoIG0sIHRocm93T25EZWdlbmVyYXRlICkge1xuXG5cdFx0Ly8gYmFzZWQgb24gaHR0cDovL3d3dy5ldWNsaWRlYW5zcGFjZS5jb20vbWF0aHMvYWxnZWJyYS9tYXRyaXgvZnVuY3Rpb25zL2ludmVyc2UvZm91ckQvaW5kZXguaHRtXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cyxcblx0XHRcdG1lID0gbS5lbGVtZW50cyxcblxuXHRcdFx0bjExID0gbWVbIDAgXSwgbjIxID0gbWVbIDEgXSwgbjMxID0gbWVbIDIgXSwgbjQxID0gbWVbIDMgXSxcblx0XHRcdG4xMiA9IG1lWyA0IF0sIG4yMiA9IG1lWyA1IF0sIG4zMiA9IG1lWyA2IF0sIG40MiA9IG1lWyA3IF0sXG5cdFx0XHRuMTMgPSBtZVsgOCBdLCBuMjMgPSBtZVsgOSBdLCBuMzMgPSBtZVsgMTAgXSwgbjQzID0gbWVbIDExIF0sXG5cdFx0XHRuMTQgPSBtZVsgMTIgXSwgbjI0ID0gbWVbIDEzIF0sIG4zNCA9IG1lWyAxNCBdLCBuNDQgPSBtZVsgMTUgXSxcblxuXHRcdFx0dDExID0gbjIzICogbjM0ICogbjQyIC0gbjI0ICogbjMzICogbjQyICsgbjI0ICogbjMyICogbjQzIC0gbjIyICogbjM0ICogbjQzIC0gbjIzICogbjMyICogbjQ0ICsgbjIyICogbjMzICogbjQ0LFxuXHRcdFx0dDEyID0gbjE0ICogbjMzICogbjQyIC0gbjEzICogbjM0ICogbjQyIC0gbjE0ICogbjMyICogbjQzICsgbjEyICogbjM0ICogbjQzICsgbjEzICogbjMyICogbjQ0IC0gbjEyICogbjMzICogbjQ0LFxuXHRcdFx0dDEzID0gbjEzICogbjI0ICogbjQyIC0gbjE0ICogbjIzICogbjQyICsgbjE0ICogbjIyICogbjQzIC0gbjEyICogbjI0ICogbjQzIC0gbjEzICogbjIyICogbjQ0ICsgbjEyICogbjIzICogbjQ0LFxuXHRcdFx0dDE0ID0gbjE0ICogbjIzICogbjMyIC0gbjEzICogbjI0ICogbjMyIC0gbjE0ICogbjIyICogbjMzICsgbjEyICogbjI0ICogbjMzICsgbjEzICogbjIyICogbjM0IC0gbjEyICogbjIzICogbjM0O1xuXG5cdFx0dmFyIGRldCA9IG4xMSAqIHQxMSArIG4yMSAqIHQxMiArIG4zMSAqIHQxMyArIG40MSAqIHQxNDtcblxuXHRcdGlmICggZGV0ID09PSAwICkge1xuXG5cdFx0XHR2YXIgbXNnID0gXCJUSFJFRS5NYXRyaXg0OiAuZ2V0SW52ZXJzZSgpIGNhbid0IGludmVydCBtYXRyaXgsIGRldGVybWluYW50IGlzIDBcIjtcblxuXHRcdFx0aWYgKCB0aHJvd09uRGVnZW5lcmF0ZSA9PT0gdHJ1ZSApIHtcblxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoIG1zZyApO1xuXG5cdFx0XHR9IGVsc2Uge1xuXG5cdFx0XHRcdGNvbnNvbGUud2FybiggbXNnICk7XG5cblx0XHRcdH1cblxuXHRcdFx0cmV0dXJuIHRoaXMuaWRlbnRpdHkoKTtcblxuXHRcdH1cblxuXHRcdHZhciBkZXRJbnYgPSAxIC8gZGV0O1xuXG5cdFx0dGVbIDAgXSA9IHQxMSAqIGRldEludjtcblx0XHR0ZVsgMSBdID0gKCBuMjQgKiBuMzMgKiBuNDEgLSBuMjMgKiBuMzQgKiBuNDEgLSBuMjQgKiBuMzEgKiBuNDMgKyBuMjEgKiBuMzQgKiBuNDMgKyBuMjMgKiBuMzEgKiBuNDQgLSBuMjEgKiBuMzMgKiBuNDQgKSAqIGRldEludjtcblx0XHR0ZVsgMiBdID0gKCBuMjIgKiBuMzQgKiBuNDEgLSBuMjQgKiBuMzIgKiBuNDEgKyBuMjQgKiBuMzEgKiBuNDIgLSBuMjEgKiBuMzQgKiBuNDIgLSBuMjIgKiBuMzEgKiBuNDQgKyBuMjEgKiBuMzIgKiBuNDQgKSAqIGRldEludjtcblx0XHR0ZVsgMyBdID0gKCBuMjMgKiBuMzIgKiBuNDEgLSBuMjIgKiBuMzMgKiBuNDEgLSBuMjMgKiBuMzEgKiBuNDIgKyBuMjEgKiBuMzMgKiBuNDIgKyBuMjIgKiBuMzEgKiBuNDMgLSBuMjEgKiBuMzIgKiBuNDMgKSAqIGRldEludjtcblxuXHRcdHRlWyA0IF0gPSB0MTIgKiBkZXRJbnY7XG5cdFx0dGVbIDUgXSA9ICggbjEzICogbjM0ICogbjQxIC0gbjE0ICogbjMzICogbjQxICsgbjE0ICogbjMxICogbjQzIC0gbjExICogbjM0ICogbjQzIC0gbjEzICogbjMxICogbjQ0ICsgbjExICogbjMzICogbjQ0ICkgKiBkZXRJbnY7XG5cdFx0dGVbIDYgXSA9ICggbjE0ICogbjMyICogbjQxIC0gbjEyICogbjM0ICogbjQxIC0gbjE0ICogbjMxICogbjQyICsgbjExICogbjM0ICogbjQyICsgbjEyICogbjMxICogbjQ0IC0gbjExICogbjMyICogbjQ0ICkgKiBkZXRJbnY7XG5cdFx0dGVbIDcgXSA9ICggbjEyICogbjMzICogbjQxIC0gbjEzICogbjMyICogbjQxICsgbjEzICogbjMxICogbjQyIC0gbjExICogbjMzICogbjQyIC0gbjEyICogbjMxICogbjQzICsgbjExICogbjMyICogbjQzICkgKiBkZXRJbnY7XG5cblx0XHR0ZVsgOCBdID0gdDEzICogZGV0SW52O1xuXHRcdHRlWyA5IF0gPSAoIG4xNCAqIG4yMyAqIG40MSAtIG4xMyAqIG4yNCAqIG40MSAtIG4xNCAqIG4yMSAqIG40MyArIG4xMSAqIG4yNCAqIG40MyArIG4xMyAqIG4yMSAqIG40NCAtIG4xMSAqIG4yMyAqIG40NCApICogZGV0SW52O1xuXHRcdHRlWyAxMCBdID0gKCBuMTIgKiBuMjQgKiBuNDEgLSBuMTQgKiBuMjIgKiBuNDEgKyBuMTQgKiBuMjEgKiBuNDIgLSBuMTEgKiBuMjQgKiBuNDIgLSBuMTIgKiBuMjEgKiBuNDQgKyBuMTEgKiBuMjIgKiBuNDQgKSAqIGRldEludjtcblx0XHR0ZVsgMTEgXSA9ICggbjEzICogbjIyICogbjQxIC0gbjEyICogbjIzICogbjQxIC0gbjEzICogbjIxICogbjQyICsgbjExICogbjIzICogbjQyICsgbjEyICogbjIxICogbjQzIC0gbjExICogbjIyICogbjQzICkgKiBkZXRJbnY7XG5cblx0XHR0ZVsgMTIgXSA9IHQxNCAqIGRldEludjtcblx0XHR0ZVsgMTMgXSA9ICggbjEzICogbjI0ICogbjMxIC0gbjE0ICogbjIzICogbjMxICsgbjE0ICogbjIxICogbjMzIC0gbjExICogbjI0ICogbjMzIC0gbjEzICogbjIxICogbjM0ICsgbjExICogbjIzICogbjM0ICkgKiBkZXRJbnY7XG5cdFx0dGVbIDE0IF0gPSAoIG4xNCAqIG4yMiAqIG4zMSAtIG4xMiAqIG4yNCAqIG4zMSAtIG4xNCAqIG4yMSAqIG4zMiArIG4xMSAqIG4yNCAqIG4zMiArIG4xMiAqIG4yMSAqIG4zNCAtIG4xMSAqIG4yMiAqIG4zNCApICogZGV0SW52O1xuXHRcdHRlWyAxNSBdID0gKCBuMTIgKiBuMjMgKiBuMzEgLSBuMTMgKiBuMjIgKiBuMzEgKyBuMTMgKiBuMjEgKiBuMzIgLSBuMTEgKiBuMjMgKiBuMzIgLSBuMTIgKiBuMjEgKiBuMzMgKyBuMTEgKiBuMjIgKiBuMzMgKSAqIGRldEludjtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0c2NhbGU6IGZ1bmN0aW9uICggdiApIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cdFx0dmFyIHggPSB2LngsIHkgPSB2LnksIHogPSB2Lno7XG5cblx0XHR0ZVsgMCBdICo9IHg7IHRlWyA0IF0gKj0geTsgdGVbIDggXSAqPSB6O1xuXHRcdHRlWyAxIF0gKj0geDsgdGVbIDUgXSAqPSB5OyB0ZVsgOSBdICo9IHo7XG5cdFx0dGVbIDIgXSAqPSB4OyB0ZVsgNiBdICo9IHk7IHRlWyAxMCBdICo9IHo7XG5cdFx0dGVbIDMgXSAqPSB4OyB0ZVsgNyBdICo9IHk7IHRlWyAxMSBdICo9IHo7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGdldE1heFNjYWxlT25BeGlzOiBmdW5jdGlvbiAoKSB7XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXG5cdFx0dmFyIHNjYWxlWFNxID0gdGVbIDAgXSAqIHRlWyAwIF0gKyB0ZVsgMSBdICogdGVbIDEgXSArIHRlWyAyIF0gKiB0ZVsgMiBdO1xuXHRcdHZhciBzY2FsZVlTcSA9IHRlWyA0IF0gKiB0ZVsgNCBdICsgdGVbIDUgXSAqIHRlWyA1IF0gKyB0ZVsgNiBdICogdGVbIDYgXTtcblx0XHR2YXIgc2NhbGVaU3EgPSB0ZVsgOCBdICogdGVbIDggXSArIHRlWyA5IF0gKiB0ZVsgOSBdICsgdGVbIDEwIF0gKiB0ZVsgMTAgXTtcblxuXHRcdHJldHVybiBNYXRoLnNxcnQoIE1hdGgubWF4KCBzY2FsZVhTcSwgc2NhbGVZU3EsIHNjYWxlWlNxICkgKTtcblxuXHR9LFxuXG5cdG1ha2VUcmFuc2xhdGlvbjogZnVuY3Rpb24gKCB4LCB5LCB6ICkge1xuXG5cdFx0dGhpcy5zZXQoXG5cblx0XHRcdDEsIDAsIDAsIHgsXG5cdFx0XHQwLCAxLCAwLCB5LFxuXHRcdFx0MCwgMCwgMSwgeixcblx0XHRcdDAsIDAsIDAsIDFcblxuXHRcdCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdG1ha2VSb3RhdGlvblg6IGZ1bmN0aW9uICggdGhldGEgKSB7XG5cblx0XHR2YXIgYyA9IE1hdGguY29zKCB0aGV0YSApLCBzID0gTWF0aC5zaW4oIHRoZXRhICk7XG5cblx0XHR0aGlzLnNldChcblxuXHRcdFx0MSwgMCwgMCwgMCxcblx0XHRcdDAsIGMsIC0gcywgMCxcblx0XHRcdDAsIHMsIGMsIDAsXG5cdFx0XHQwLCAwLCAwLCAxXG5cblx0XHQpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRtYWtlUm90YXRpb25ZOiBmdW5jdGlvbiAoIHRoZXRhICkge1xuXG5cdFx0dmFyIGMgPSBNYXRoLmNvcyggdGhldGEgKSwgcyA9IE1hdGguc2luKCB0aGV0YSApO1xuXG5cdFx0dGhpcy5zZXQoXG5cblx0XHRcdCBjLCAwLCBzLCAwLFxuXHRcdFx0IDAsIDEsIDAsIDAsXG5cdFx0XHQtIHMsIDAsIGMsIDAsXG5cdFx0XHQgMCwgMCwgMCwgMVxuXG5cdFx0KTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0bWFrZVJvdGF0aW9uWjogZnVuY3Rpb24gKCB0aGV0YSApIHtcblxuXHRcdHZhciBjID0gTWF0aC5jb3MoIHRoZXRhICksIHMgPSBNYXRoLnNpbiggdGhldGEgKTtcblxuXHRcdHRoaXMuc2V0KFxuXG5cdFx0XHRjLCAtIHMsIDAsIDAsXG5cdFx0XHRzLCBjLCAwLCAwLFxuXHRcdFx0MCwgMCwgMSwgMCxcblx0XHRcdDAsIDAsIDAsIDFcblxuXHRcdCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdG1ha2VSb3RhdGlvbkF4aXM6IGZ1bmN0aW9uICggYXhpcywgYW5nbGUgKSB7XG5cblx0XHQvLyBCYXNlZCBvbiBodHRwOi8vd3d3LmdhbWVkZXYubmV0L3JlZmVyZW5jZS9hcnRpY2xlcy9hcnRpY2xlMTE5OS5hc3BcblxuXHRcdHZhciBjID0gTWF0aC5jb3MoIGFuZ2xlICk7XG5cdFx0dmFyIHMgPSBNYXRoLnNpbiggYW5nbGUgKTtcblx0XHR2YXIgdCA9IDEgLSBjO1xuXHRcdHZhciB4ID0gYXhpcy54LCB5ID0gYXhpcy55LCB6ID0gYXhpcy56O1xuXHRcdHZhciB0eCA9IHQgKiB4LCB0eSA9IHQgKiB5O1xuXG5cdFx0dGhpcy5zZXQoXG5cblx0XHRcdHR4ICogeCArIGMsIHR4ICogeSAtIHMgKiB6LCB0eCAqIHogKyBzICogeSwgMCxcblx0XHRcdHR4ICogeSArIHMgKiB6LCB0eSAqIHkgKyBjLCB0eSAqIHogLSBzICogeCwgMCxcblx0XHRcdHR4ICogeiAtIHMgKiB5LCB0eSAqIHogKyBzICogeCwgdCAqIHogKiB6ICsgYywgMCxcblx0XHRcdDAsIDAsIDAsIDFcblxuXHRcdCk7XG5cblx0XHQgcmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRtYWtlU2NhbGU6IGZ1bmN0aW9uICggeCwgeSwgeiApIHtcblxuXHRcdHRoaXMuc2V0KFxuXG5cdFx0XHR4LCAwLCAwLCAwLFxuXHRcdFx0MCwgeSwgMCwgMCxcblx0XHRcdDAsIDAsIHosIDAsXG5cdFx0XHQwLCAwLCAwLCAxXG5cblx0XHQpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRtYWtlU2hlYXI6IGZ1bmN0aW9uICggeCwgeSwgeiApIHtcblxuXHRcdHRoaXMuc2V0KFxuXG5cdFx0XHQxLCB5LCB6LCAwLFxuXHRcdFx0eCwgMSwgeiwgMCxcblx0XHRcdHgsIHksIDEsIDAsXG5cdFx0XHQwLCAwLCAwLCAxXG5cblx0XHQpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRjb21wb3NlOiBmdW5jdGlvbiAoIHBvc2l0aW9uLCBxdWF0ZXJuaW9uLCBzY2FsZSApIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cblx0XHR2YXIgeCA9IHF1YXRlcm5pb24uX3gsIHkgPSBxdWF0ZXJuaW9uLl95LCB6ID0gcXVhdGVybmlvbi5feiwgdyA9IHF1YXRlcm5pb24uX3c7XG5cdFx0dmFyIHgyID0geCArIHgsXHR5MiA9IHkgKyB5LCB6MiA9IHogKyB6O1xuXHRcdHZhciB4eCA9IHggKiB4MiwgeHkgPSB4ICogeTIsIHh6ID0geCAqIHoyO1xuXHRcdHZhciB5eSA9IHkgKiB5MiwgeXogPSB5ICogejIsIHp6ID0geiAqIHoyO1xuXHRcdHZhciB3eCA9IHcgKiB4Miwgd3kgPSB3ICogeTIsIHd6ID0gdyAqIHoyO1xuXG5cdFx0dmFyIHN4ID0gc2NhbGUueCwgc3kgPSBzY2FsZS55LCBzeiA9IHNjYWxlLno7XG5cblx0XHR0ZVsgMCBdID0gKCAxIC0gKCB5eSArIHp6ICkgKSAqIHN4O1xuXHRcdHRlWyAxIF0gPSAoIHh5ICsgd3ogKSAqIHN4O1xuXHRcdHRlWyAyIF0gPSAoIHh6IC0gd3kgKSAqIHN4O1xuXHRcdHRlWyAzIF0gPSAwO1xuXG5cdFx0dGVbIDQgXSA9ICggeHkgLSB3eiApICogc3k7XG5cdFx0dGVbIDUgXSA9ICggMSAtICggeHggKyB6eiApICkgKiBzeTtcblx0XHR0ZVsgNiBdID0gKCB5eiArIHd4ICkgKiBzeTtcblx0XHR0ZVsgNyBdID0gMDtcblxuXHRcdHRlWyA4IF0gPSAoIHh6ICsgd3kgKSAqIHN6O1xuXHRcdHRlWyA5IF0gPSAoIHl6IC0gd3ggKSAqIHN6O1xuXHRcdHRlWyAxMCBdID0gKCAxIC0gKCB4eCArIHl5ICkgKSAqIHN6O1xuXHRcdHRlWyAxMSBdID0gMDtcblxuXHRcdHRlWyAxMiBdID0gcG9zaXRpb24ueDtcblx0XHR0ZVsgMTMgXSA9IHBvc2l0aW9uLnk7XG5cdFx0dGVbIDE0IF0gPSBwb3NpdGlvbi56O1xuXHRcdHRlWyAxNSBdID0gMTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0ZGVjb21wb3NlOiBmdW5jdGlvbiAoKSB7XG5cblx0XHR2YXIgdmVjdG9yID0gbmV3IFZlY3RvcjMoKTtcblx0XHR2YXIgbWF0cml4ID0gbmV3IE1hdHJpeDQoKTtcblxuXHRcdHJldHVybiBmdW5jdGlvbiBkZWNvbXBvc2UoIHBvc2l0aW9uLCBxdWF0ZXJuaW9uLCBzY2FsZSApIHtcblxuXHRcdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblxuXHRcdFx0dmFyIHN4ID0gdmVjdG9yLnNldCggdGVbIDAgXSwgdGVbIDEgXSwgdGVbIDIgXSApLmxlbmd0aCgpO1xuXHRcdFx0dmFyIHN5ID0gdmVjdG9yLnNldCggdGVbIDQgXSwgdGVbIDUgXSwgdGVbIDYgXSApLmxlbmd0aCgpO1xuXHRcdFx0dmFyIHN6ID0gdmVjdG9yLnNldCggdGVbIDggXSwgdGVbIDkgXSwgdGVbIDEwIF0gKS5sZW5ndGgoKTtcblxuXHRcdFx0Ly8gaWYgZGV0ZXJtaW5lIGlzIG5lZ2F0aXZlLCB3ZSBuZWVkIHRvIGludmVydCBvbmUgc2NhbGVcblx0XHRcdHZhciBkZXQgPSB0aGlzLmRldGVybWluYW50KCk7XG5cdFx0XHRpZiAoIGRldCA8IDAgKSBzeCA9IC0gc3g7XG5cblx0XHRcdHBvc2l0aW9uLnggPSB0ZVsgMTIgXTtcblx0XHRcdHBvc2l0aW9uLnkgPSB0ZVsgMTMgXTtcblx0XHRcdHBvc2l0aW9uLnogPSB0ZVsgMTQgXTtcblxuXHRcdFx0Ly8gc2NhbGUgdGhlIHJvdGF0aW9uIHBhcnRcblx0XHRcdG1hdHJpeC5jb3B5KCB0aGlzICk7XG5cblx0XHRcdHZhciBpbnZTWCA9IDEgLyBzeDtcblx0XHRcdHZhciBpbnZTWSA9IDEgLyBzeTtcblx0XHRcdHZhciBpbnZTWiA9IDEgLyBzejtcblxuXHRcdFx0bWF0cml4LmVsZW1lbnRzWyAwIF0gKj0gaW52U1g7XG5cdFx0XHRtYXRyaXguZWxlbWVudHNbIDEgXSAqPSBpbnZTWDtcblx0XHRcdG1hdHJpeC5lbGVtZW50c1sgMiBdICo9IGludlNYO1xuXG5cdFx0XHRtYXRyaXguZWxlbWVudHNbIDQgXSAqPSBpbnZTWTtcblx0XHRcdG1hdHJpeC5lbGVtZW50c1sgNSBdICo9IGludlNZO1xuXHRcdFx0bWF0cml4LmVsZW1lbnRzWyA2IF0gKj0gaW52U1k7XG5cblx0XHRcdG1hdHJpeC5lbGVtZW50c1sgOCBdICo9IGludlNaO1xuXHRcdFx0bWF0cml4LmVsZW1lbnRzWyA5IF0gKj0gaW52U1o7XG5cdFx0XHRtYXRyaXguZWxlbWVudHNbIDEwIF0gKj0gaW52U1o7XG5cblx0XHRcdHF1YXRlcm5pb24uc2V0RnJvbVJvdGF0aW9uTWF0cml4KCBtYXRyaXggKTtcblxuXHRcdFx0c2NhbGUueCA9IHN4O1xuXHRcdFx0c2NhbGUueSA9IHN5O1xuXHRcdFx0c2NhbGUueiA9IHN6O1xuXG5cdFx0XHRyZXR1cm4gdGhpcztcblxuXHRcdH07XG5cblx0fSgpLFxuXG5cdG1ha2VQZXJzcGVjdGl2ZTogZnVuY3Rpb24gKCBsZWZ0LCByaWdodCwgdG9wLCBib3R0b20sIG5lYXIsIGZhciApIHtcblxuXHRcdGlmICggZmFyID09PSB1bmRlZmluZWQgKSB7XG5cblx0XHRcdGNvbnNvbGUud2FybiggJ1RIUkVFLk1hdHJpeDQ6IC5tYWtlUGVyc3BlY3RpdmUoKSBoYXMgYmVlbiByZWRlZmluZWQgYW5kIGhhcyBhIG5ldyBzaWduYXR1cmUuIFBsZWFzZSBjaGVjayB0aGUgZG9jcy4nICk7XG5cblx0XHR9XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXHRcdHZhciB4ID0gMiAqIG5lYXIgLyAoIHJpZ2h0IC0gbGVmdCApO1xuXHRcdHZhciB5ID0gMiAqIG5lYXIgLyAoIHRvcCAtIGJvdHRvbSApO1xuXG5cdFx0dmFyIGEgPSAoIHJpZ2h0ICsgbGVmdCApIC8gKCByaWdodCAtIGxlZnQgKTtcblx0XHR2YXIgYiA9ICggdG9wICsgYm90dG9tICkgLyAoIHRvcCAtIGJvdHRvbSApO1xuXHRcdHZhciBjID0gLSAoIGZhciArIG5lYXIgKSAvICggZmFyIC0gbmVhciApO1xuXHRcdHZhciBkID0gLSAyICogZmFyICogbmVhciAvICggZmFyIC0gbmVhciApO1xuXG5cdFx0dGVbIDAgXSA9IHg7XHR0ZVsgNCBdID0gMDtcdHRlWyA4IF0gPSBhO1x0dGVbIDEyIF0gPSAwO1xuXHRcdHRlWyAxIF0gPSAwO1x0dGVbIDUgXSA9IHk7XHR0ZVsgOSBdID0gYjtcdHRlWyAxMyBdID0gMDtcblx0XHR0ZVsgMiBdID0gMDtcdHRlWyA2IF0gPSAwO1x0dGVbIDEwIF0gPSBjO1x0dGVbIDE0IF0gPSBkO1xuXHRcdHRlWyAzIF0gPSAwO1x0dGVbIDcgXSA9IDA7XHR0ZVsgMTEgXSA9IC0gMTtcdHRlWyAxNSBdID0gMDtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0bWFrZU9ydGhvZ3JhcGhpYzogZnVuY3Rpb24gKCBsZWZ0LCByaWdodCwgdG9wLCBib3R0b20sIG5lYXIsIGZhciApIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cdFx0dmFyIHcgPSAxLjAgLyAoIHJpZ2h0IC0gbGVmdCApO1xuXHRcdHZhciBoID0gMS4wIC8gKCB0b3AgLSBib3R0b20gKTtcblx0XHR2YXIgcCA9IDEuMCAvICggZmFyIC0gbmVhciApO1xuXG5cdFx0dmFyIHggPSAoIHJpZ2h0ICsgbGVmdCApICogdztcblx0XHR2YXIgeSA9ICggdG9wICsgYm90dG9tICkgKiBoO1xuXHRcdHZhciB6ID0gKCBmYXIgKyBuZWFyICkgKiBwO1xuXG5cdFx0dGVbIDAgXSA9IDIgKiB3O1x0dGVbIDQgXSA9IDA7XHR0ZVsgOCBdID0gMDtcdHRlWyAxMiBdID0gLSB4O1xuXHRcdHRlWyAxIF0gPSAwO1x0dGVbIDUgXSA9IDIgKiBoO1x0dGVbIDkgXSA9IDA7XHR0ZVsgMTMgXSA9IC0geTtcblx0XHR0ZVsgMiBdID0gMDtcdHRlWyA2IF0gPSAwO1x0dGVbIDEwIF0gPSAtIDIgKiBwO1x0dGVbIDE0IF0gPSAtIHo7XG5cdFx0dGVbIDMgXSA9IDA7XHR0ZVsgNyBdID0gMDtcdHRlWyAxMSBdID0gMDtcdHRlWyAxNSBdID0gMTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0ZXF1YWxzOiBmdW5jdGlvbiAoIG1hdHJpeCApIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cdFx0dmFyIG1lID0gbWF0cml4LmVsZW1lbnRzO1xuXG5cdFx0Zm9yICggdmFyIGkgPSAwOyBpIDwgMTY7IGkgKysgKSB7XG5cblx0XHRcdGlmICggdGVbIGkgXSAhPT0gbWVbIGkgXSApIHJldHVybiBmYWxzZTtcblxuXHRcdH1cblxuXHRcdHJldHVybiB0cnVlO1xuXG5cdH0sXG5cblx0ZnJvbUFycmF5OiBmdW5jdGlvbiAoIGFycmF5LCBvZmZzZXQgKSB7XG5cblx0XHRpZiAoIG9mZnNldCA9PT0gdW5kZWZpbmVkICkgb2Zmc2V0ID0gMDtcblxuXHRcdGZvciAoIHZhciBpID0gMDsgaSA8IDE2OyBpICsrICkge1xuXG5cdFx0XHR0aGlzLmVsZW1lbnRzWyBpIF0gPSBhcnJheVsgaSArIG9mZnNldCBdO1xuXG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHR0b0FycmF5OiBmdW5jdGlvbiAoIGFycmF5LCBvZmZzZXQgKSB7XG5cblx0XHRpZiAoIGFycmF5ID09PSB1bmRlZmluZWQgKSBhcnJheSA9IFtdO1xuXHRcdGlmICggb2Zmc2V0ID09PSB1bmRlZmluZWQgKSBvZmZzZXQgPSAwO1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblxuXHRcdGFycmF5WyBvZmZzZXQgXSA9IHRlWyAwIF07XG5cdFx0YXJyYXlbIG9mZnNldCArIDEgXSA9IHRlWyAxIF07XG5cdFx0YXJyYXlbIG9mZnNldCArIDIgXSA9IHRlWyAyIF07XG5cdFx0YXJyYXlbIG9mZnNldCArIDMgXSA9IHRlWyAzIF07XG5cblx0XHRhcnJheVsgb2Zmc2V0ICsgNCBdID0gdGVbIDQgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgNSBdID0gdGVbIDUgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgNiBdID0gdGVbIDYgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgNyBdID0gdGVbIDcgXTtcblxuXHRcdGFycmF5WyBvZmZzZXQgKyA4IF0gPSB0ZVsgOCBdO1xuXHRcdGFycmF5WyBvZmZzZXQgKyA5IF0gPSB0ZVsgOSBdO1xuXHRcdGFycmF5WyBvZmZzZXQgKyAxMCBdID0gdGVbIDEwIF07XG5cdFx0YXJyYXlbIG9mZnNldCArIDExIF0gPSB0ZVsgMTEgXTtcblxuXHRcdGFycmF5WyBvZmZzZXQgKyAxMiBdID0gdGVbIDEyIF07XG5cdFx0YXJyYXlbIG9mZnNldCArIDEzIF0gPSB0ZVsgMTMgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMTQgXSA9IHRlWyAxNCBdO1xuXHRcdGFycmF5WyBvZmZzZXQgKyAxNSBdID0gdGVbIDE1IF07XG5cblx0XHRyZXR1cm4gYXJyYXk7XG5cblx0fVxuXG59ICk7XG5cblxuZXhwb3J0IHsgTWF0cml4NCB9OyJdfQ==
745
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb3JlL3RocmVlL01hdHJpeDQuanMiXSwibmFtZXMiOlsiTWF0cml4NCIsImVsZW1lbnRzIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiY29uc29sZSIsImVycm9yIiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwiaXNNYXRyaXg0Iiwic2V0IiwibjExIiwibjEyIiwibjEzIiwibjE0IiwibjIxIiwibjIyIiwibjIzIiwibjI0IiwibjMxIiwibjMyIiwibjMzIiwibjM0IiwibjQxIiwibjQyIiwibjQzIiwibjQ0IiwidGUiLCJpZGVudGl0eSIsImNsb25lIiwiZnJvbUFycmF5IiwiY29weSIsIm0iLCJtZSIsImNvcHlQb3NpdGlvbiIsImV4dHJhY3RCYXNpcyIsInhBeGlzIiwieUF4aXMiLCJ6QXhpcyIsInNldEZyb21NYXRyaXhDb2x1bW4iLCJtYWtlQmFzaXMiLCJ4IiwieSIsInoiLCJleHRyYWN0Um90YXRpb24iLCJ2MSIsIlZlY3RvcjMiLCJzY2FsZVgiLCJzY2FsZVkiLCJzY2FsZVoiLCJtYWtlUm90YXRpb25Gcm9tRXVsZXIiLCJldWxlciIsImlzRXVsZXIiLCJhIiwiTWF0aCIsImNvcyIsImIiLCJzaW4iLCJjIiwiZCIsImUiLCJmIiwib3JkZXIiLCJhZSIsImFmIiwiYmUiLCJiZiIsImNlIiwiY2YiLCJkZSIsImRmIiwiYWMiLCJhZCIsImJjIiwiYmQiLCJtYWtlUm90YXRpb25Gcm9tUXVhdGVybmlvbiIsInplcm8iLCJvbmUiLCJxIiwiY29tcG9zZSIsImxvb2tBdCIsImV5ZSIsInRhcmdldCIsInVwIiwic3ViVmVjdG9ycyIsImxlbmd0aFNxIiwibm9ybWFsaXplIiwiY3Jvc3NWZWN0b3JzIiwiYWJzIiwibXVsdGlwbHkiLCJuIiwidW5kZWZpbmVkIiwid2FybiIsIm11bHRpcGx5TWF0cmljZXMiLCJwcmVtdWx0aXBseSIsImExMSIsImExMiIsImExMyIsImExNCIsImEyMSIsImEyMiIsImEyMyIsImEyNCIsImEzMSIsImEzMiIsImEzMyIsImEzNCIsImE0MSIsImE0MiIsImE0MyIsImE0NCIsImIxMSIsImIxMiIsImIxMyIsImIxNCIsImIyMSIsImIyMiIsImIyMyIsImIyNCIsImIzMSIsImIzMiIsImIzMyIsImIzNCIsImI0MSIsImI0MiIsImI0MyIsImI0NCIsIm11bHRpcGx5U2NhbGFyIiwicyIsImFwcGx5VG9CdWZmZXJBdHRyaWJ1dGUiLCJhdHRyaWJ1dGUiLCJpIiwibCIsImNvdW50IiwiZ2V0WCIsImdldFkiLCJnZXRaIiwiYXBwbHlNYXRyaXg0Iiwic2V0WFlaIiwiZGV0ZXJtaW5hbnQiLCJ0cmFuc3Bvc2UiLCJ0bXAiLCJzZXRQb3NpdGlvbiIsImlzVmVjdG9yMyIsImdldEludmVyc2UiLCJ0aHJvd09uRGVnZW5lcmF0ZSIsInQxMSIsInQxMiIsInQxMyIsInQxNCIsImRldCIsIm1zZyIsIkVycm9yIiwiZGV0SW52Iiwic2NhbGUiLCJ2IiwiZ2V0TWF4U2NhbGVPbkF4aXMiLCJzY2FsZVhTcSIsInNjYWxlWVNxIiwic2NhbGVaU3EiLCJzcXJ0IiwibWF4IiwibWFrZVRyYW5zbGF0aW9uIiwibWFrZVJvdGF0aW9uWCIsInRoZXRhIiwibWFrZVJvdGF0aW9uWSIsIm1ha2VSb3RhdGlvbloiLCJtYWtlUm90YXRpb25BeGlzIiwiYXhpcyIsImFuZ2xlIiwidCIsInR4IiwidHkiLCJtYWtlU2NhbGUiLCJtYWtlU2hlYXIiLCJwb3NpdGlvbiIsInF1YXRlcm5pb24iLCJfeCIsIl95IiwiX3oiLCJ3IiwiX3ciLCJ4MiIsInkyIiwiejIiLCJ4eCIsInh5IiwieHoiLCJ5eSIsInl6IiwienoiLCJ3eCIsInd5Iiwid3oiLCJzeCIsInN5Iiwic3oiLCJkZWNvbXBvc2UiLCJ2ZWN0b3IiLCJtYXRyaXgiLCJpbnZTWCIsImludlNZIiwiaW52U1oiLCJzZXRGcm9tUm90YXRpb25NYXRyaXgiLCJtYWtlUGVyc3BlY3RpdmUiLCJsZWZ0IiwicmlnaHQiLCJ0b3AiLCJib3R0b20iLCJuZWFyIiwiZmFyIiwibWFrZU9y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N0wsRUFBRSxDQUFFLEVBQUYsQ0FBekI7QUFFQSxXQUFPNEwsS0FBUDtBQUVBO0FBNTRCZ0MsQ0FBbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZWN0b3IzIH0gZnJvbSAnLi9WZWN0b3IzLmpzJztcblxuLyoqXG4gKiBAYXV0aG9yIG1yZG9vYiAvIGh0dHA6Ly9tcmRvb2IuY29tL1xuICogQGF1dGhvciBzdXBlcmVnZ2JlcnQgLyBodHRwOi8vd3d3LnBhdWxicnVudC5jby51ay9cbiAqIEBhdXRob3IgcGhpbG9nYiAvIGh0dHA6Ly9ibG9nLnRoZWppdC5vcmcvXG4gKiBAYXV0aG9yIGpvcmRpX3JvcyAvIGh0dHA6Ly9wbGF0dHNvZnQuY29tXG4gKiBAYXV0aG9yIEQxcGxvMWQgLyBodHRwOi8vZ2l0aHViLmNvbS9EMXBsbzFkXG4gKiBAYXV0aG9yIGFsdGVyZWRxIC8gaHR0cDovL2FsdGVyZWRxdWFsaWEuY29tL1xuICogQGF1dGhvciBtaWthZWwgZW10aW5nZXIgLyBodHRwOi8vZ29tby5zZS9cbiAqIEBhdXRob3IgdGlta25pcCAvIGh0dHA6Ly93d3cuZmxvb3JwbGFubmVyLmNvbS9cbiAqIEBhdXRob3IgYmhvdXN0b24gLyBodHRwOi8vY2xhcmEuaW9cbiAqIEBhdXRob3IgV2VzdExhbmdsZXkgLyBodHRwOi8vZ2l0aHViLmNvbS9XZXN0TGFuZ2xleVxuICovXG5cbmZ1bmN0aW9uIE1hdHJpeDQoKSB7XG5cblx0dGhpcy5lbGVtZW50cyA9IFtcblxuXHRcdDEsIDAsIDAsIDAsXG5cdFx0MCwgMSwgMCwgMCxcblx0XHQwLCAwLCAxLCAwLFxuXHRcdDAsIDAsIDAsIDFcblxuXHRdO1xuXG5cdGlmICggYXJndW1lbnRzLmxlbmd0aCA+IDAgKSB7XG5cblx0XHRjb25zb2xlLmVycm9yKCAnVEhSRUUuTWF0cml4NDogdGhlIGNvbnN0cnVjdG9yIG5vIGxvbmdlciByZWFkcyBhcmd1bWVudHMuIHVzZSAuc2V0KCkgaW5zdGVhZC4nICk7XG5cblx0fVxuXG59XG5cbk9iamVjdC5hc3NpZ24oIE1hdHJpeDQucHJvdG90eXBlLCB7XG5cblx0aXNNYXRyaXg0OiB0cnVlLFxuXG5cdHNldDogZnVuY3Rpb24gKCBuMTEsIG4xMiwgbjEzLCBuMTQsIG4yMSwgbjIyLCBuMjMsIG4yNCwgbjMxLCBuMzIsIG4zMywgbjM0LCBuNDEsIG40MiwgbjQzLCBuNDQgKSB7XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXG5cdFx0dGVbIDAgXSA9IG4xMTsgdGVbIDQgXSA9IG4xMjsgdGVbIDggXSA9IG4xMzsgdGVbIDEyIF0gPSBuMTQ7XG5cdFx0dGVbIDEgXSA9IG4yMTsgdGVbIDUgXSA9IG4yMjsgdGVbIDkgXSA9IG4yMzsgdGVbIDEzIF0gPSBuMjQ7XG5cdFx0dGVbIDIgXSA9IG4zMTsgdGVbIDYgXSA9IG4zMjsgdGVbIDEwIF0gPSBuMzM7IHRlWyAxNCBdID0gbjM0O1xuXHRcdHRlWyAzIF0gPSBuNDE7IHRlWyA3IF0gPSBuNDI7IHRlWyAxMSBdID0gbjQzOyB0ZVsgMTUgXSA9IG40NDtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0aWRlbnRpdHk6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHRoaXMuc2V0KFxuXG5cdFx0XHQxLCAwLCAwLCAwLFxuXHRcdFx0MCwgMSwgMCwgMCxcblx0XHRcdDAsIDAsIDEsIDAsXG5cdFx0XHQwLCAwLCAwLCAxXG5cblx0XHQpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRjbG9uZTogZnVuY3Rpb24gKCkge1xuXG5cdFx0cmV0dXJuIG5ldyBNYXRyaXg0KCkuZnJvbUFycmF5KCB0aGlzLmVsZW1lbnRzICk7XG5cblx0fSxcblxuXHRjb3B5OiBmdW5jdGlvbiAoIG0gKSB7XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXHRcdHZhciBtZSA9IG0uZWxlbWVudHM7XG5cblx0XHR0ZVsgMCBdID0gbWVbIDAgXTsgdGVbIDEgXSA9IG1lWyAxIF07IHRlWyAyIF0gPSBtZVsgMiBdOyB0ZVsgMyBdID0gbWVbIDMgXTtcblx0XHR0ZVsgNCBdID0gbWVbIDQgXTsgdGVbIDUgXSA9IG1lWyA1IF07IHRlWyA2IF0gPSBtZVsgNiBdOyB0ZVsgNyBdID0gbWVbIDcgXTtcblx0XHR0ZVsgOCBdID0gbWVbIDggXTsgdGVbIDkgXSA9IG1lWyA5IF07IHRlWyAxMCBdID0gbWVbIDEwIF07IHRlWyAxMSBdID0gbWVbIDExIF07XG5cdFx0dGVbIDEyIF0gPSBtZVsgMTIgXTsgdGVbIDEzIF0gPSBtZVsgMTMgXTsgdGVbIDE0IF0gPSBtZVsgMTQgXTsgdGVbIDE1IF0gPSBtZVsgMTUgXTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0Y29weVBvc2l0aW9uOiBmdW5jdGlvbiAoIG0gKSB7XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzLCBtZSA9IG0uZWxlbWVudHM7XG5cblx0XHR0ZVsgMTIgXSA9IG1lWyAxMiBdO1xuXHRcdHRlWyAxMyBdID0gbWVbIDEzIF07XG5cdFx0dGVbIDE0IF0gPSBtZVsgMTQgXTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0ZXh0cmFjdEJhc2lzOiBmdW5jdGlvbiAoIHhBeGlzLCB5QXhpcywgekF4aXMgKSB7XG5cblx0XHR4QXhpcy5zZXRGcm9tTWF0cml4Q29sdW1uKCB0aGlzLCAwICk7XG5cdFx0eUF4aXMuc2V0RnJvbU1hdHJpeENvbHVtbiggdGhpcywgMSApO1xuXHRcdHpBeGlzLnNldEZyb21NYXRyaXhDb2x1bW4oIHRoaXMsIDIgKTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0bWFrZUJhc2lzOiBmdW5jdGlvbiAoIHhBeGlzLCB5QXhpcywgekF4aXMgKSB7XG5cblx0XHR0aGlzLnNldChcblx0XHRcdHhBeGlzLngsIHlBeGlzLngsIHpBeGlzLngsIDAsXG5cdFx0XHR4QXhpcy55LCB5QXhpcy55LCB6QXhpcy55LCAwLFxuXHRcdFx0eEF4aXMueiwgeUF4aXMueiwgekF4aXMueiwgMCxcblx0XHRcdDAsIDAsIDAsIDFcblx0XHQpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRleHRyYWN0Um90YXRpb246IGZ1bmN0aW9uICgpIHtcblxuXHRcdHZhciB2MSA9IG5ldyBWZWN0b3IzKCk7XG5cblx0XHRyZXR1cm4gZnVuY3Rpb24gZXh0cmFjdFJvdGF0aW9uKCBtICkge1xuXG5cdFx0XHQvLyB0aGlzIG1ldGhvZCBkb2VzIG5vdCBzdXBwb3J0IHJlZmxlY3Rpb24gbWF0cmljZXNcblxuXHRcdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblx0XHRcdHZhciBtZSA9IG0uZWxlbWVudHM7XG5cblx0XHRcdHZhciBzY2FsZVggPSAxIC8gdjEuc2V0RnJvbU1hdHJpeENvbHVtbiggbSwgMCApLmxlbmd0aCgpO1xuXHRcdFx0dmFyIHNjYWxlWSA9IDEgLyB2MS5zZXRGcm9tTWF0cml4Q29sdW1uKCBtLCAxICkubGVuZ3RoKCk7XG5cdFx0XHR2YXIgc2NhbGVaID0gMSAvIHYxLnNldEZyb21NYXRyaXhDb2x1bW4oIG0sIDIgKS5sZW5ndGgoKTtcblxuXHRcdFx0dGVbIDAgXSA9IG1lWyAwIF0gKiBzY2FsZVg7XG5cdFx0XHR0ZVsgMSBdID0gbWVbIDEgXSAqIHNjYWxlWDtcblx0XHRcdHRlWyAyIF0gPSBtZVsgMiBdICogc2NhbGVYO1xuXHRcdFx0dGVbIDMgXSA9IDA7XG5cblx0XHRcdHRlWyA0IF0gPSBtZVsgNCBdICogc2NhbGVZO1xuXHRcdFx0dGVbIDUgXSA9IG1lWyA1IF0gKiBzY2FsZVk7XG5cdFx0XHR0ZVsgNiBdID0gbWVbIDYgXSAqIHNjYWxlWTtcblx0XHRcdHRlWyA3IF0gPSAwO1xuXG5cdFx0XHR0ZVsgOCBdID0gbWVbIDggXSAqIHNjYWxlWjtcblx0XHRcdHRlWyA5IF0gPSBtZVsgOSBdICogc2NhbGVaO1xuXHRcdFx0dGVbIDEwIF0gPSBtZVsgMTAgXSAqIHNjYWxlWjtcblx0XHRcdHRlWyAxMSBdID0gMDtcblxuXHRcdFx0dGVbIDEyIF0gPSAwO1xuXHRcdFx0dGVbIDEzIF0gPSAwO1xuXHRcdFx0dGVbIDE0IF0gPSAwO1xuXHRcdFx0dGVbIDE1IF0gPSAxO1xuXG5cdFx0XHRyZXR1cm4gdGhpcztcblxuXHRcdH07XG5cblx0fSgpLFxuXG5cdG1ha2VSb3RhdGlvbkZyb21FdWxlcjogZnVuY3Rpb24gKCBldWxlciApIHtcblxuXHRcdGlmICggISAoIGV1bGVyICYmIGV1bGVyLmlzRXVsZXIgKSApIHtcblxuXHRcdFx0Y29uc29sZS5lcnJvciggJ1RIUkVFLk1hdHJpeDQ6IC5tYWtlUm90YXRpb25Gcm9tRXVsZXIoKSBub3cgZXhwZWN0cyBhIEV1bGVyIHJvdGF0aW9uIHJhdGhlciB0aGFuIGEgVmVjdG9yMyBhbmQgb3JkZXIuJyApO1xuXG5cdFx0fVxuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblxuXHRcdHZhciB4ID0gZXVsZXIueCwgeSA9IGV1bGVyLnksIHogPSBldWxlci56O1xuXHRcdHZhciBhID0gTWF0aC5jb3MoIHggKSwgYiA9IE1hdGguc2luKCB4ICk7XG5cdFx0dmFyIGMgPSBNYXRoLmNvcyggeSApLCBkID0gTWF0aC5zaW4oIHkgKTtcblx0XHR2YXIgZSA9IE1hdGguY29zKCB6ICksIGYgPSBNYXRoLnNpbiggeiApO1xuXG5cdFx0aWYgKCBldWxlci5vcmRlciA9PT0gJ1hZWicgKSB7XG5cblx0XHRcdHZhciBhZSA9IGEgKiBlLCBhZiA9IGEgKiBmLCBiZSA9IGIgKiBlLCBiZiA9IGIgKiBmO1xuXG5cdFx0XHR0ZVsgMCBdID0gYyAqIGU7XG5cdFx0XHR0ZVsgNCBdID0gLSBjICogZjtcblx0XHRcdHRlWyA4IF0gPSBkO1xuXG5cdFx0XHR0ZVsgMSBdID0gYWYgKyBiZSAqIGQ7XG5cdFx0XHR0ZVsgNSBdID0gYWUgLSBiZiAqIGQ7XG5cdFx0XHR0ZVsgOSBdID0gLSBiICogYztcblxuXHRcdFx0dGVbIDIgXSA9IGJmIC0gYWUgKiBkO1xuXHRcdFx0dGVbIDYgXSA9IGJlICsgYWYgKiBkO1xuXHRcdFx0dGVbIDEwIF0gPSBhICogYztcblxuXHRcdH0gZWxzZSBpZiAoIGV1bGVyLm9yZGVyID09PSAnWVhaJyApIHtcblxuXHRcdFx0dmFyIGNlID0gYyAqIGUsIGNmID0gYyAqIGYsIGRlID0gZCAqIGUsIGRmID0gZCAqIGY7XG5cblx0XHRcdHRlWyAwIF0gPSBjZSArIGRmICogYjtcblx0XHRcdHRlWyA0IF0gPSBkZSAqIGIgLSBjZjtcblx0XHRcdHRlWyA4IF0gPSBhICogZDtcblxuXHRcdFx0dGVbIDEgXSA9IGEgKiBmO1xuXHRcdFx0dGVbIDUgXSA9IGEgKiBlO1xuXHRcdFx0dGVbIDkgXSA9IC0gYjtcblxuXHRcdFx0dGVbIDIgXSA9IGNmICogYiAtIGRlO1xuXHRcdFx0dGVbIDYgXSA9IGRmICsgY2UgKiBiO1xuXHRcdFx0dGVbIDEwIF0gPSBhICogYztcblxuXHRcdH0gZWxzZSBpZiAoIGV1bGVyLm9yZGVyID09PSAnWlhZJyApIHtcblxuXHRcdFx0dmFyIGNlID0gYyAqIGUsIGNmID0gYyAqIGYsIGRlID0gZCAqIGUsIGRmID0gZCAqIGY7XG5cblx0XHRcdHRlWyAwIF0gPSBjZSAtIGRmICogYjtcblx0XHRcdHRlWyA0IF0gPSAtIGEgKiBmO1xuXHRcdFx0dGVbIDggXSA9IGRlICsgY2YgKiBiO1xuXG5cdFx0XHR0ZVsgMSBdID0gY2YgKyBkZSAqIGI7XG5cdFx0XHR0ZVsgNSBdID0gYSAqIGU7XG5cdFx0XHR0ZVsgOSBdID0gZGYgLSBjZSAqIGI7XG5cblx0XHRcdHRlWyAyIF0gPSAtIGEgKiBkO1xuXHRcdFx0dGVbIDYgXSA9IGI7XG5cdFx0XHR0ZVsgMTAgXSA9IGEgKiBjO1xuXG5cdFx0fSBlbHNlIGlmICggZXVsZXIub3JkZXIgPT09ICdaWVgnICkge1xuXG5cdFx0XHR2YXIgYWUgPSBhICogZSwgYWYgPSBhICogZiwgYmUgPSBiICogZSwgYmYgPSBiICogZjtcblxuXHRcdFx0dGVbIDAgXSA9IGMgKiBlO1xuXHRcdFx0dGVbIDQgXSA9IGJlICogZCAtIGFmO1xuXHRcdFx0dGVbIDggXSA9IGFlICogZCArIGJmO1xuXG5cdFx0XHR0ZVsgMSBdID0gYyAqIGY7XG5cdFx0XHR0ZVsgNSBdID0gYmYgKiBkICsgYWU7XG5cdFx0XHR0ZVsgOSBdID0gYWYgKiBkIC0gYmU7XG5cblx0XHRcdHRlWyAyIF0gPSAtIGQ7XG5cdFx0XHR0ZVsgNiBdID0gYiAqIGM7XG5cdFx0XHR0ZVsgMTAgXSA9IGEgKiBjO1xuXG5cdFx0fSBlbHNlIGlmICggZXVsZXIub3JkZXIgPT09ICdZWlgnICkge1xuXG5cdFx0XHR2YXIgYWMgPSBhICogYywgYWQgPSBhICogZCwgYmMgPSBiICogYywgYmQgPSBiICogZDtcblxuXHRcdFx0dGVbIDAgXSA9IGMgKiBlO1xuXHRcdFx0dGVbIDQgXSA9IGJkIC0gYWMgKiBmO1xuXHRcdFx0dGVbIDggXSA9IGJjICogZiArIGFkO1xuXG5cdFx0XHR0ZVsgMSBdID0gZjtcblx0XHRcdHRlWyA1IF0gPSBhICogZTtcblx0XHRcdHRlWyA5IF0gPSAtIGIgKiBlO1xuXG5cdFx0XHR0ZVsgMiBdID0gLSBkICogZTtcblx0XHRcdHRlWyA2IF0gPSBhZCAqIGYgKyBiYztcblx0XHRcdHRlWyAxMCBdID0gYWMgLSBiZCAqIGY7XG5cblx0XHR9IGVsc2UgaWYgKCBldWxlci5vcmRlciA9PT0gJ1haWScgKSB7XG5cblx0XHRcdHZhciBhYyA9IGEgKiBjLCBhZCA9IGEgKiBkLCBiYyA9IGIgKiBjLCBiZCA9IGIgKiBkO1xuXG5cdFx0XHR0ZVsgMCBdID0gYyAqIGU7XG5cdFx0XHR0ZVsgNCBdID0gLSBmO1xuXHRcdFx0dGVbIDggXSA9IGQgKiBlO1xuXG5cdFx0XHR0ZVsgMSBdID0gYWMgKiBmICsgYmQ7XG5cdFx0XHR0ZVsgNSBdID0gYSAqIGU7XG5cdFx0XHR0ZVsgOSBdID0gYWQgKiBmIC0gYmM7XG5cblx0XHRcdHRlWyAyIF0gPSBiYyAqIGYgLSBhZDtcblx0XHRcdHRlWyA2IF0gPSBiICogZTtcblx0XHRcdHRlWyAxMCBdID0gYmQgKiBmICsgYWM7XG5cblx0XHR9XG5cblx0XHQvLyBib3R0b20gcm93XG5cdFx0dGVbIDMgXSA9IDA7XG5cdFx0dGVbIDcgXSA9IDA7XG5cdFx0dGVbIDExIF0gPSAwO1xuXG5cdFx0Ly8gbGFzdCBjb2x1bW5cblx0XHR0ZVsgMTIgXSA9IDA7XG5cdFx0dGVbIDEzIF0gPSAwO1xuXHRcdHRlWyAxNCBdID0gMDtcblx0XHR0ZVsgMTUgXSA9IDE7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdG1ha2VSb3RhdGlvbkZyb21RdWF0ZXJuaW9uOiBmdW5jdGlvbiAoKSB7XG5cblx0XHR2YXIgemVybyA9IG5ldyBWZWN0b3IzKCAwLCAwLCAwICk7XG5cdFx0dmFyIG9uZSA9IG5ldyBWZWN0b3IzKCAxLCAxLCAxICk7XG5cblx0XHRyZXR1cm4gZnVuY3Rpb24gbWFrZVJvdGF0aW9uRnJvbVF1YXRlcm5pb24oIHEgKSB7XG5cblx0XHRcdHJldHVybiB0aGlzLmNvbXBvc2UoIHplcm8sIHEsIG9uZSApO1xuXG5cdFx0fTtcblxuXHR9KCksXG5cblx0bG9va0F0OiBmdW5jdGlvbiAoKSB7XG5cblx0XHR2YXIgeCA9IG5ldyBWZWN0b3IzKCk7XG5cdFx0dmFyIHkgPSBuZXcgVmVjdG9yMygpO1xuXHRcdHZhciB6ID0gbmV3IFZlY3RvcjMoKTtcblxuXHRcdHJldHVybiBmdW5jdGlvbiBsb29rQXQoIGV5ZSwgdGFyZ2V0LCB1cCApIHtcblxuXHRcdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblxuXHRcdFx0ei5zdWJWZWN0b3JzKCBleWUsIHRhcmdldCApO1xuXG5cdFx0XHRpZiAoIHoubGVuZ3RoU3EoKSA9PT0gMCApIHtcblxuXHRcdFx0XHQvLyBleWUgYW5kIHRhcmdldCBhcmUgaW4gdGhlIHNhbWUgcG9zaXRpb25cblxuXHRcdFx0XHR6LnogPSAxO1xuXG5cdFx0XHR9XG5cblx0XHRcdHoubm9ybWFsaXplKCk7XG5cdFx0XHR4LmNyb3NzVmVjdG9ycyggdXAsIHogKTtcblxuXHRcdFx0aWYgKCB4Lmxlbmd0aFNxKCkgPT09IDAgKSB7XG5cblx0XHRcdFx0Ly8gdXAgYW5kIHogYXJlIHBhcmFsbGVsXG5cblx0XHRcdFx0aWYgKCBNYXRoLmFicyggdXAueiApID09PSAxICkge1xuXG5cdFx0XHRcdFx0ei54ICs9IDAuMDAwMTtcblxuXHRcdFx0XHR9IGVsc2Uge1xuXG5cdFx0XHRcdFx0ei56ICs9IDAuMDAwMTtcblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0ei5ub3JtYWxpemUoKTtcblx0XHRcdFx0eC5jcm9zc1ZlY3RvcnMoIHVwLCB6ICk7XG5cblx0XHRcdH1cblxuXHRcdFx0eC5ub3JtYWxpemUoKTtcblx0XHRcdHkuY3Jvc3NWZWN0b3JzKCB6LCB4ICk7XG5cblx0XHRcdHRlWyAwIF0gPSB4Lng7IHRlWyA0IF0gPSB5Lng7IHRlWyA4IF0gPSB6Lng7XG5cdFx0XHR0ZVsgMSBdID0geC55OyB0ZVsgNSBdID0geS55OyB0ZVsgOSBdID0gei55O1xuXHRcdFx0dGVbIDIgXSA9IHguejsgdGVbIDYgXSA9IHkuejsgdGVbIDEwIF0gPSB6Lno7XG5cblx0XHRcdHJldHVybiB0aGlzO1xuXG5cdFx0fTtcblxuXHR9KCksXG5cblx0bXVsdGlwbHk6IGZ1bmN0aW9uICggbSwgbiApIHtcblxuXHRcdGlmICggbiAhPT0gdW5kZWZpbmVkICkge1xuXG5cdFx0XHRjb25zb2xlLndhcm4oICdUSFJFRS5NYXRyaXg0OiAubXVsdGlwbHkoKSBub3cgb25seSBhY2NlcHRzIG9uZSBhcmd1bWVudC4gVXNlIC5tdWx0aXBseU1hdHJpY2VzKCBhLCBiICkgaW5zdGVhZC4nICk7XG5cdFx0XHRyZXR1cm4gdGhpcy5tdWx0aXBseU1hdHJpY2VzKCBtLCBuICk7XG5cblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcy5tdWx0aXBseU1hdHJpY2VzKCB0aGlzLCBtICk7XG5cblx0fSxcblxuXHRwcmVtdWx0aXBseTogZnVuY3Rpb24gKCBtICkge1xuXG5cdFx0cmV0dXJuIHRoaXMubXVsdGlwbHlNYXRyaWNlcyggbSwgdGhpcyApO1xuXG5cdH0sXG5cblx0bXVsdGlwbHlNYXRyaWNlczogZnVuY3Rpb24gKCBhLCBiICkge1xuXG5cdFx0dmFyIGFlID0gYS5lbGVtZW50cztcblx0XHR2YXIgYmUgPSBiLmVsZW1lbnRzO1xuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cblx0XHR2YXIgYTExID0gYWVbIDAgXSwgYTEyID0gYWVbIDQgXSwgYTEzID0gYWVbIDggXSwgYTE0ID0gYWVbIDEyIF07XG5cdFx0dmFyIGEyMSA9IGFlWyAxIF0sIGEyMiA9IGFlWyA1IF0sIGEyMyA9IGFlWyA5IF0sIGEyNCA9IGFlWyAxMyBdO1xuXHRcdHZhciBhMzEgPSBhZVsgMiBdLCBhMzIgPSBhZVsgNiBdLCBhMzMgPSBhZVsgMTAgXSwgYTM0ID0gYWVbIDE0IF07XG5cdFx0dmFyIGE0MSA9IGFlWyAzIF0sIGE0MiA9IGFlWyA3IF0sIGE0MyA9IGFlWyAxMSBdLCBhNDQgPSBhZVsgMTUgXTtcblxuXHRcdHZhciBiMTEgPSBiZVsgMCBdLCBiMTIgPSBiZVsgNCBdLCBiMTMgPSBiZVsgOCBdLCBiMTQgPSBiZVsgMTIgXTtcblx0XHR2YXIgYjIxID0gYmVbIDEgXSwgYjIyID0gYmVbIDUgXSwgYjIzID0gYmVbIDkgXSwgYjI0ID0gYmVbIDEzIF07XG5cdFx0dmFyIGIzMSA9IGJlWyAyIF0sIGIzMiA9IGJlWyA2IF0sIGIzMyA9IGJlWyAxMCBdLCBiMzQgPSBiZVsgMTQgXTtcblx0XHR2YXIgYjQxID0gYmVbIDMgXSwgYjQyID0gYmVbIDcgXSwgYjQzID0gYmVbIDExIF0sIGI0NCA9IGJlWyAxNSBdO1xuXG5cdFx0dGVbIDAgXSA9IGExMSAqIGIxMSArIGExMiAqIGIyMSArIGExMyAqIGIzMSArIGExNCAqIGI0MTtcblx0XHR0ZVsgNCBdID0gYTExICogYjEyICsgYTEyICogYjIyICsgYTEzICogYjMyICsgYTE0ICogYjQyO1xuXHRcdHRlWyA4IF0gPSBhMTEgKiBiMTMgKyBhMTIgKiBiMjMgKyBhMTMgKiBiMzMgKyBhMTQgKiBiNDM7XG5cdFx0dGVbIDEyIF0gPSBhMTEgKiBiMTQgKyBhMTIgKiBiMjQgKyBhMTMgKiBiMzQgKyBhMTQgKiBiNDQ7XG5cblx0XHR0ZVsgMSBdID0gYTIxICogYjExICsgYTIyICogYjIxICsgYTIzICogYjMxICsgYTI0ICogYjQxO1xuXHRcdHRlWyA1IF0gPSBhMjEgKiBiMTIgKyBhMjIgKiBiMjIgKyBhMjMgKiBiMzIgKyBhMjQgKiBiNDI7XG5cdFx0dGVbIDkgXSA9IGEyMSAqIGIxMyArIGEyMiAqIGIyMyArIGEyMyAqIGIzMyArIGEyNCAqIGI0Mztcblx0XHR0ZVsgMTMgXSA9IGEyMSAqIGIxNCArIGEyMiAqIGIyNCArIGEyMyAqIGIzNCArIGEyNCAqIGI0NDtcblxuXHRcdHRlWyAyIF0gPSBhMzEgKiBiMTEgKyBhMzIgKiBiMjEgKyBhMzMgKiBiMzEgKyBhMzQgKiBiNDE7XG5cdFx0dGVbIDYgXSA9IGEzMSAqIGIxMiArIGEzMiAqIGIyMiArIGEzMyAqIGIzMiArIGEzNCAqIGI0Mjtcblx0XHR0ZVsgMTAgXSA9IGEzMSAqIGIxMyArIGEzMiAqIGIyMyArIGEzMyAqIGIzMyArIGEzNCAqIGI0Mztcblx0XHR0ZVsgMTQgXSA9IGEzMSAqIGIxNCArIGEzMiAqIGIyNCArIGEzMyAqIGIzNCArIGEzNCAqIGI0NDtcblxuXHRcdHRlWyAzIF0gPSBhNDEgKiBiMTEgKyBhNDIgKiBiMjEgKyBhNDMgKiBiMzEgKyBhNDQgKiBiNDE7XG5cdFx0dGVbIDcgXSA9IGE0MSAqIGIxMiArIGE0MiAqIGIyMiArIGE0MyAqIGIzMiArIGE0NCAqIGI0Mjtcblx0XHR0ZVsgMTEgXSA9IGE0MSAqIGIxMyArIGE0MiAqIGIyMyArIGE0MyAqIGIzMyArIGE0NCAqIGI0Mztcblx0XHR0ZVsgMTUgXSA9IGE0MSAqIGIxNCArIGE0MiAqIGIyNCArIGE0MyAqIGIzNCArIGE0NCAqIGI0NDtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0bXVsdGlwbHlTY2FsYXI6IGZ1bmN0aW9uICggcyApIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cblx0XHR0ZVsgMCBdICo9IHM7IHRlWyA0IF0gKj0gczsgdGVbIDggXSAqPSBzOyB0ZVsgMTIgXSAqPSBzO1xuXHRcdHRlWyAxIF0gKj0gczsgdGVbIDUgXSAqPSBzOyB0ZVsgOSBdICo9IHM7IHRlWyAxMyBdICo9IHM7XG5cdFx0dGVbIDIgXSAqPSBzOyB0ZVsgNiBdICo9IHM7IHRlWyAxMCBdICo9IHM7IHRlWyAxNCBdICo9IHM7XG5cdFx0dGVbIDMgXSAqPSBzOyB0ZVsgNyBdICo9IHM7IHRlWyAxMSBdICo9IHM7IHRlWyAxNSBdICo9IHM7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGFwcGx5VG9CdWZmZXJBdHRyaWJ1dGU6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHZhciB2MSA9IG5ldyBWZWN0b3IzKCk7XG5cblx0XHRyZXR1cm4gZnVuY3Rpb24gYXBwbHlUb0J1ZmZlckF0dHJpYnV0ZSggYXR0cmlidXRlICkge1xuXG5cdFx0XHRmb3IgKCB2YXIgaSA9IDAsIGwgPSBhdHRyaWJ1dGUuY291bnQ7IGkgPCBsOyBpICsrICkge1xuXG5cdFx0XHRcdHYxLnggPSBhdHRyaWJ1dGUuZ2V0WCggaSApO1xuXHRcdFx0XHR2MS55ID0gYXR0cmlidXRlLmdldFkoIGkgKTtcblx0XHRcdFx0djEueiA9IGF0dHJpYnV0ZS5nZXRaKCBpICk7XG5cblx0XHRcdFx0djEuYXBwbHlNYXRyaXg0KCB0aGlzICk7XG5cblx0XHRcdFx0YXR0cmlidXRlLnNldFhZWiggaSwgdjEueCwgdjEueSwgdjEueiApO1xuXG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiBhdHRyaWJ1dGU7XG5cblx0XHR9O1xuXG5cdH0oKSxcblxuXHRkZXRlcm1pbmFudDogZnVuY3Rpb24gKCkge1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblxuXHRcdHZhciBuMTEgPSB0ZVsgMCBdLCBuMTIgPSB0ZVsgNCBdLCBuMTMgPSB0ZVsgOCBdLCBuMTQgPSB0ZVsgMTIgXTtcblx0XHR2YXIgbjIxID0gdGVbIDEgXSwgbjIyID0gdGVbIDUgXSwgbjIzID0gdGVbIDkgXSwgbjI0ID0gdGVbIDEzIF07XG5cdFx0dmFyIG4zMSA9IHRlWyAyIF0sIG4zMiA9IHRlWyA2IF0sIG4zMyA9IHRlWyAxMCBdLCBuMzQgPSB0ZVsgMTQgXTtcblx0XHR2YXIgbjQxID0gdGVbIDMgXSwgbjQyID0gdGVbIDcgXSwgbjQzID0gdGVbIDExIF0sIG40NCA9IHRlWyAxNSBdO1xuXG5cdFx0Ly9UT0RPOiBtYWtlIHRoaXMgbW9yZSBlZmZpY2llbnRcblx0XHQvLyggYmFzZWQgb24gaHR0cDovL3d3dy5ldWNsaWRlYW5zcGFjZS5jb20vbWF0aHMvYWxnZWJyYS9tYXRyaXgvZnVuY3Rpb25zL2ludmVyc2UvZm91ckQvaW5kZXguaHRtIClcblxuXHRcdHJldHVybiAoXG5cdFx0XHRuNDEgKiAoXG5cdFx0XHRcdCsgbjE0ICogbjIzICogbjMyXG5cdFx0XHRcdCAtIG4xMyAqIG4yNCAqIG4zMlxuXHRcdFx0XHQgLSBuMTQgKiBuMjIgKiBuMzNcblx0XHRcdFx0ICsgbjEyICogbjI0ICogbjMzXG5cdFx0XHRcdCArIG4xMyAqIG4yMiAqIG4zNFxuXHRcdFx0XHQgLSBuMTIgKiBuMjMgKiBuMzRcblx0XHRcdCkgK1xuXHRcdFx0bjQyICogKFxuXHRcdFx0XHQrIG4xMSAqIG4yMyAqIG4zNFxuXHRcdFx0XHQgLSBuMTEgKiBuMjQgKiBuMzNcblx0XHRcdFx0ICsgbjE0ICogbjIxICogbjMzXG5cdFx0XHRcdCAtIG4xMyAqIG4yMSAqIG4zNFxuXHRcdFx0XHQgKyBuMTMgKiBuMjQgKiBuMzFcblx0XHRcdFx0IC0gbjE0ICogbjIzICogbjMxXG5cdFx0XHQpICtcblx0XHRcdG40MyAqIChcblx0XHRcdFx0KyBuMTEgKiBuMjQgKiBuMzJcblx0XHRcdFx0IC0gbjExICogbjIyICogbjM0XG5cdFx0XHRcdCAtIG4xNCAqIG4yMSAqIG4zMlxuXHRcdFx0XHQgKyBuMTIgKiBuMjEgKiBuMzRcblx0XHRcdFx0ICsgbjE0ICogbjIyICogbjMxXG5cdFx0XHRcdCAtIG4xMiAqIG4yNCAqIG4zMVxuXHRcdFx0KSArXG5cdFx0XHRuNDQgKiAoXG5cdFx0XHRcdC0gbjEzICogbjIyICogbjMxXG5cdFx0XHRcdCAtIG4xMSAqIG4yMyAqIG4zMlxuXHRcdFx0XHQgKyBuMTEgKiBuMjIgKiBuMzNcblx0XHRcdFx0ICsgbjEzICogbjIxICogbjMyXG5cdFx0XHRcdCAtIG4xMiAqIG4yMSAqIG4zM1xuXHRcdFx0XHQgKyBuMTIgKiBuMjMgKiBuMzFcblx0XHRcdClcblxuXHRcdCk7XG5cblx0fSxcblxuXHR0cmFuc3Bvc2U6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cdFx0dmFyIHRtcDtcblxuXHRcdHRtcCA9IHRlWyAxIF07IHRlWyAxIF0gPSB0ZVsgNCBdOyB0ZVsgNCBdID0gdG1wO1xuXHRcdHRtcCA9IHRlWyAyIF07IHRlWyAyIF0gPSB0ZVsgOCBdOyB0ZVsgOCBdID0gdG1wO1xuXHRcdHRtcCA9IHRlWyA2IF07IHRlWyA2IF0gPSB0ZVsgOSBdOyB0ZVsgOSBdID0gdG1wO1xuXG5cdFx0dG1wID0gdGVbIDMgXTsgdGVbIDMgXSA9IHRlWyAxMiBdOyB0ZVsgMTIgXSA9IHRtcDtcblx0XHR0bXAgPSB0ZVsgNyBdOyB0ZVsgNyBdID0gdGVbIDEzIF07IHRlWyAxMyBdID0gdG1wO1xuXHRcdHRtcCA9IHRlWyAxMSBdOyB0ZVsgMTEgXSA9IHRlWyAxNCBdOyB0ZVsgMTQgXSA9IHRtcDtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0c2V0UG9zaXRpb246IGZ1bmN0aW9uICggeCwgeSwgeiApIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cblx0XHRpZiAoIHguaXNWZWN0b3IzICkge1xuXG5cdFx0XHR0ZVsgMTIgXSA9IHgueDtcblx0XHRcdHRlWyAxMyBdID0geC55O1xuXHRcdFx0dGVbIDE0IF0gPSB4Lno7XG5cblx0XHR9IGVsc2Uge1xuXG5cdFx0XHR0ZVsgMTIgXSA9IHg7XG5cdFx0XHR0ZVsgMTMgXSA9IHk7XG5cdFx0XHR0ZVsgMTQgXSA9IHo7XG5cblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGdldEludmVyc2U6IGZ1bmN0aW9uICggbSwgdGhyb3dPbkRlZ2VuZXJhdGUgKSB7XG5cblx0XHQvLyBiYXNlZCBvbiBodHRwOi8vd3d3LmV1Y2xpZGVhbnNwYWNlLmNvbS9tYXRocy9hbGdlYnJhL21hdHJpeC9mdW5jdGlvbnMvaW52ZXJzZS9mb3VyRC9pbmRleC5odG1cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzLFxuXHRcdFx0bWUgPSBtLmVsZW1lbnRzLFxuXG5cdFx0XHRuMTEgPSBtZVsgMCBdLCBuMjEgPSBtZVsgMSBdLCBuMzEgPSBtZVsgMiBdLCBuNDEgPSBtZVsgMyBdLFxuXHRcdFx0bjEyID0gbWVbIDQgXSwgbjIyID0gbWVbIDUgXSwgbjMyID0gbWVbIDYgXSwgbjQyID0gbWVbIDcgXSxcblx0XHRcdG4xMyA9IG1lWyA4IF0sIG4yMyA9IG1lWyA5IF0sIG4zMyA9IG1lWyAxMCBdLCBuNDMgPSBtZVsgMTEgXSxcblx0XHRcdG4xNCA9IG1lWyAxMiBdLCBuMjQgPSBtZVsgMTMgXSwgbjM0ID0gbWVbIDE0IF0sIG40NCA9IG1lWyAxNSBdLFxuXG5cdFx0XHR0MTEgPSBuMjMgKiBuMzQgKiBuNDIgLSBuMjQgKiBuMzMgKiBuNDIgKyBuMjQgKiBuMzIgKiBuNDMgLSBuMjIgKiBuMzQgKiBuNDMgLSBuMjMgKiBuMzIgKiBuNDQgKyBuMjIgKiBuMzMgKiBuNDQsXG5cdFx0XHR0MTIgPSBuMTQgKiBuMzMgKiBuNDIgLSBuMTMgKiBuMzQgKiBuNDIgLSBuMTQgKiBuMzIgKiBuNDMgKyBuMTIgKiBuMzQgKiBuNDMgKyBuMTMgKiBuMzIgKiBuNDQgLSBuMTIgKiBuMzMgKiBuNDQsXG5cdFx0XHR0MTMgPSBuMTMgKiBuMjQgKiBuNDIgLSBuMTQgKiBuMjMgKiBuNDIgKyBuMTQgKiBuMjIgKiBuNDMgLSBuMTIgKiBuMjQgKiBuNDMgLSBuMTMgKiBuMjIgKiBuNDQgKyBuMTIgKiBuMjMgKiBuNDQsXG5cdFx0XHR0MTQgPSBuMTQgKiBuMjMgKiBuMzIgLSBuMTMgKiBuMjQgKiBuMzIgLSBuMTQgKiBuMjIgKiBuMzMgKyBuMTIgKiBuMjQgKiBuMzMgKyBuMTMgKiBuMjIgKiBuMzQgLSBuMTIgKiBuMjMgKiBuMzQ7XG5cblx0XHR2YXIgZGV0ID0gbjExICogdDExICsgbjIxICogdDEyICsgbjMxICogdDEzICsgbjQxICogdDE0O1xuXG5cdFx0aWYgKCBkZXQgPT09IDAgKSB7XG5cblx0XHRcdHZhciBtc2cgPSBcIlRIUkVFLk1hdHJpeDQ6IC5nZXRJbnZlcnNlKCkgY2FuJ3QgaW52ZXJ0IG1hdHJpeCwgZGV0ZXJtaW5hbnQgaXMgMFwiO1xuXG5cdFx0XHRpZiAoIHRocm93T25EZWdlbmVyYXRlID09PSB0cnVlICkge1xuXG5cdFx0XHRcdHRocm93IG5ldyBFcnJvciggbXNnICk7XG5cblx0XHRcdH0gZWxzZSB7XG5cblx0XHRcdFx0Y29uc29sZS53YXJuKCBtc2cgKTtcblxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gdGhpcy5pZGVudGl0eSgpO1xuXG5cdFx0fVxuXG5cdFx0dmFyIGRldEludiA9IDEgLyBkZXQ7XG5cblx0XHR0ZVsgMCBdID0gdDExICogZGV0SW52O1xuXHRcdHRlWyAxIF0gPSAoIG4yNCAqIG4zMyAqIG40MSAtIG4yMyAqIG4zNCAqIG40MSAtIG4yNCAqIG4zMSAqIG40MyArIG4yMSAqIG4zNCAqIG40MyArIG4yMyAqIG4zMSAqIG40NCAtIG4yMSAqIG4zMyAqIG40NCApICogZGV0SW52O1xuXHRcdHRlWyAyIF0gPSAoIG4yMiAqIG4zNCAqIG40MSAtIG4yNCAqIG4zMiAqIG40MSArIG4yNCAqIG4zMSAqIG40MiAtIG4yMSAqIG4zNCAqIG40MiAtIG4yMiAqIG4zMSAqIG40NCArIG4yMSAqIG4zMiAqIG40NCApICogZGV0SW52O1xuXHRcdHRlWyAzIF0gPSAoIG4yMyAqIG4zMiAqIG40MSAtIG4yMiAqIG4zMyAqIG40MSAtIG4yMyAqIG4zMSAqIG40MiArIG4yMSAqIG4zMyAqIG40MiArIG4yMiAqIG4zMSAqIG40MyAtIG4yMSAqIG4zMiAqIG40MyApICogZGV0SW52O1xuXG5cdFx0dGVbIDQgXSA9IHQxMiAqIGRldEludjtcblx0XHR0ZVsgNSBdID0gKCBuMTMgKiBuMzQgKiBuNDEgLSBuMTQgKiBuMzMgKiBuNDEgKyBuMTQgKiBuMzEgKiBuNDMgLSBuMTEgKiBuMzQgKiBuNDMgLSBuMTMgKiBuMzEgKiBuNDQgKyBuMTEgKiBuMzMgKiBuNDQgKSAqIGRldEludjtcblx0XHR0ZVsgNiBdID0gKCBuMTQgKiBuMzIgKiBuNDEgLSBuMTIgKiBuMzQgKiBuNDEgLSBuMTQgKiBuMzEgKiBuNDIgKyBuMTEgKiBuMzQgKiBuNDIgKyBuMTIgKiBuMzEgKiBuNDQgLSBuMTEgKiBuMzIgKiBuNDQgKSAqIGRldEludjtcblx0XHR0ZVsgNyBdID0gKCBuMTIgKiBuMzMgKiBuNDEgLSBuMTMgKiBuMzIgKiBuNDEgKyBuMTMgKiBuMzEgKiBuNDIgLSBuMTEgKiBuMzMgKiBuNDIgLSBuMTIgKiBuMzEgKiBuNDMgKyBuMTEgKiBuMzIgKiBuNDMgKSAqIGRldEludjtcblxuXHRcdHRlWyA4IF0gPSB0MTMgKiBkZXRJbnY7XG5cdFx0dGVbIDkgXSA9ICggbjE0ICogbjIzICogbjQxIC0gbjEzICogbjI0ICogbjQxIC0gbjE0ICogbjIxICogbjQzICsgbjExICogbjI0ICogbjQzICsgbjEzICogbjIxICogbjQ0IC0gbjExICogbjIzICogbjQ0ICkgKiBkZXRJbnY7XG5cdFx0dGVbIDEwIF0gPSAoIG4xMiAqIG4yNCAqIG40MSAtIG4xNCAqIG4yMiAqIG40MSArIG4xNCAqIG4yMSAqIG40MiAtIG4xMSAqIG4yNCAqIG40MiAtIG4xMiAqIG4yMSAqIG40NCArIG4xMSAqIG4yMiAqIG40NCApICogZGV0SW52O1xuXHRcdHRlWyAxMSBdID0gKCBuMTMgKiBuMjIgKiBuNDEgLSBuMTIgKiBuMjMgKiBuNDEgLSBuMTMgKiBuMjEgKiBuNDIgKyBuMTEgKiBuMjMgKiBuNDIgKyBuMTIgKiBuMjEgKiBuNDMgLSBuMTEgKiBuMjIgKiBuNDMgKSAqIGRldEludjtcblxuXHRcdHRlWyAxMiBdID0gdDE0ICogZGV0SW52O1xuXHRcdHRlWyAxMyBdID0gKCBuMTMgKiBuMjQgKiBuMzEgLSBuMTQgKiBuMjMgKiBuMzEgKyBuMTQgKiBuMjEgKiBuMzMgLSBuMTEgKiBuMjQgKiBuMzMgLSBuMTMgKiBuMjEgKiBuMzQgKyBuMTEgKiBuMjMgKiBuMzQgKSAqIGRldEludjtcblx0XHR0ZVsgMTQgXSA9ICggbjE0ICogbjIyICogbjMxIC0gbjEyICogbjI0ICogbjMxIC0gbjE0ICogbjIxICogbjMyICsgbjExICogbjI0ICogbjMyICsgbjEyICogbjIxICogbjM0IC0gbjExICogbjIyICogbjM0ICkgKiBkZXRJbnY7XG5cdFx0dGVbIDE1IF0gPSAoIG4xMiAqIG4yMyAqIG4zMSAtIG4xMyAqIG4yMiAqIG4zMSArIG4xMyAqIG4yMSAqIG4zMiAtIG4xMSAqIG4yMyAqIG4zMiAtIG4xMiAqIG4yMSAqIG4zMyArIG4xMSAqIG4yMiAqIG4zMyApICogZGV0SW52O1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRzY2FsZTogZnVuY3Rpb24gKCB2ICkge1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblx0XHR2YXIgeCA9IHYueCwgeSA9IHYueSwgeiA9IHYuejtcblxuXHRcdHRlWyAwIF0gKj0geDsgdGVbIDQgXSAqPSB5OyB0ZVsgOCBdICo9IHo7XG5cdFx0dGVbIDEgXSAqPSB4OyB0ZVsgNSBdICo9IHk7IHRlWyA5IF0gKj0gejtcblx0XHR0ZVsgMiBdICo9IHg7IHRlWyA2IF0gKj0geTsgdGVbIDEwIF0gKj0gejtcblx0XHR0ZVsgMyBdICo9IHg7IHRlWyA3IF0gKj0geTsgdGVbIDExIF0gKj0gejtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0Z2V0TWF4U2NhbGVPbkF4aXM6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cblx0XHR2YXIgc2NhbGVYU3EgPSB0ZVsgMCBdICogdGVbIDAgXSArIHRlWyAxIF0gKiB0ZVsgMSBdICsgdGVbIDIgXSAqIHRlWyAyIF07XG5cdFx0dmFyIHNjYWxlWVNxID0gdGVbIDQgXSAqIHRlWyA0IF0gKyB0ZVsgNSBdICogdGVbIDUgXSArIHRlWyA2IF0gKiB0ZVsgNiBdO1xuXHRcdHZhciBzY2FsZVpTcSA9IHRlWyA4IF0gKiB0ZVsgOCBdICsgdGVbIDkgXSAqIHRlWyA5IF0gKyB0ZVsgMTAgXSAqIHRlWyAxMCBdO1xuXG5cdFx0cmV0dXJuIE1hdGguc3FydCggTWF0aC5tYXgoIHNjYWxlWFNxLCBzY2FsZVlTcSwgc2NhbGVaU3EgKSApO1xuXG5cdH0sXG5cblx0bWFrZVRyYW5zbGF0aW9uOiBmdW5jdGlvbiAoIHgsIHksIHogKSB7XG5cblx0XHR0aGlzLnNldChcblxuXHRcdFx0MSwgMCwgMCwgeCxcblx0XHRcdDAsIDEsIDAsIHksXG5cdFx0XHQwLCAwLCAxLCB6LFxuXHRcdFx0MCwgMCwgMCwgMVxuXG5cdFx0KTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0bWFrZVJvdGF0aW9uWDogZnVuY3Rpb24gKCB0aGV0YSApIHtcblxuXHRcdHZhciBjID0gTWF0aC5jb3MoIHRoZXRhICksIHMgPSBNYXRoLnNpbiggdGhldGEgKTtcblxuXHRcdHRoaXMuc2V0KFxuXG5cdFx0XHQxLCAwLCAwLCAwLFxuXHRcdFx0MCwgYywgLSBzLCAwLFxuXHRcdFx0MCwgcywgYywgMCxcblx0XHRcdDAsIDAsIDAsIDFcblxuXHRcdCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdG1ha2VSb3RhdGlvblk6IGZ1bmN0aW9uICggdGhldGEgKSB7XG5cblx0XHR2YXIgYyA9IE1hdGguY29zKCB0aGV0YSApLCBzID0gTWF0aC5zaW4oIHRoZXRhICk7XG5cblx0XHR0aGlzLnNldChcblxuXHRcdFx0IGMsIDAsIHMsIDAsXG5cdFx0XHQgMCwgMSwgMCwgMCxcblx0XHRcdC0gcywgMCwgYywgMCxcblx0XHRcdCAwLCAwLCAwLCAxXG5cblx0XHQpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRtYWtlUm90YXRpb25aOiBmdW5jdGlvbiAoIHRoZXRhICkge1xuXG5cdFx0dmFyIGMgPSBNYXRoLmNvcyggdGhldGEgKSwgcyA9IE1hdGguc2luKCB0aGV0YSApO1xuXG5cdFx0dGhpcy5zZXQoXG5cblx0XHRcdGMsIC0gcywgMCwgMCxcblx0XHRcdHMsIGMsIDAsIDAsXG5cdFx0XHQwLCAwLCAxLCAwLFxuXHRcdFx0MCwgMCwgMCwgMVxuXG5cdFx0KTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0bWFrZVJvdGF0aW9uQXhpczogZnVuY3Rpb24gKCBheGlzLCBhbmdsZSApIHtcblxuXHRcdC8vIEJhc2VkIG9uIGh0dHA6Ly93d3cuZ2FtZWRldi5uZXQvcmVmZXJlbmNlL2FydGljbGVzL2FydGljbGUxMTk5LmFzcFxuXG5cdFx0dmFyIGMgPSBNYXRoLmNvcyggYW5nbGUgKTtcblx0XHR2YXIgcyA9IE1hdGguc2luKCBhbmdsZSApO1xuXHRcdHZhciB0ID0gMSAtIGM7XG5cdFx0dmFyIHggPSBheGlzLngsIHkgPSBheGlzLnksIHogPSBheGlzLno7XG5cdFx0dmFyIHR4ID0gdCAqIHgsIHR5ID0gdCAqIHk7XG5cblx0XHR0aGlzLnNldChcblxuXHRcdFx0dHggKiB4ICsgYywgdHggKiB5IC0gcyAqIHosIHR4ICogeiArIHMgKiB5LCAwLFxuXHRcdFx0dHggKiB5ICsgcyAqIHosIHR5ICogeSArIGMsIHR5ICogeiAtIHMgKiB4LCAwLFxuXHRcdFx0dHggKiB6IC0gcyAqIHksIHR5ICogeiArIHMgKiB4LCB0ICogeiAqIHogKyBjLCAwLFxuXHRcdFx0MCwgMCwgMCwgMVxuXG5cdFx0KTtcblxuXHRcdCByZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdG1ha2VTY2FsZTogZnVuY3Rpb24gKCB4LCB5LCB6ICkge1xuXG5cdFx0dGhpcy5zZXQoXG5cblx0XHRcdHgsIDAsIDAsIDAsXG5cdFx0XHQwLCB5LCAwLCAwLFxuXHRcdFx0MCwgMCwgeiwgMCxcblx0XHRcdDAsIDAsIDAsIDFcblxuXHRcdCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdG1ha2VTaGVhcjogZnVuY3Rpb24gKCB4LCB5LCB6ICkge1xuXG5cdFx0dGhpcy5zZXQoXG5cblx0XHRcdDEsIHksIHosIDAsXG5cdFx0XHR4LCAxLCB6LCAwLFxuXHRcdFx0eCwgeSwgMSwgMCxcblx0XHRcdDAsIDAsIDAsIDFcblxuXHRcdCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGNvbXBvc2U6IGZ1bmN0aW9uICggcG9zaXRpb24sIHF1YXRlcm5pb24sIHNjYWxlICkge1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblxuXHRcdHZhciB4ID0gcXVhdGVybmlvbi5feCwgeSA9IHF1YXRlcm5pb24uX3ksIHogPSBxdWF0ZXJuaW9uLl96LCB3ID0gcXVhdGVybmlvbi5fdztcblx0XHR2YXIgeDIgPSB4ICsgeCxcdHkyID0geSArIHksIHoyID0geiArIHo7XG5cdFx0dmFyIHh4ID0geCAqIHgyLCB4eSA9IHggKiB5MiwgeHogPSB4ICogejI7XG5cdFx0dmFyIHl5ID0geSAqIHkyLCB5eiA9IHkgKiB6MiwgenogPSB6ICogejI7XG5cdFx0dmFyIHd4ID0gdyAqIHgyLCB3eSA9IHcgKiB5Miwgd3ogPSB3ICogejI7XG5cblx0XHR2YXIgc3ggPSBzY2FsZS54LCBzeSA9IHNjYWxlLnksIHN6ID0gc2NhbGUuejtcblxuXHRcdHRlWyAwIF0gPSAoIDEgLSAoIHl5ICsgenogKSApICogc3g7XG5cdFx0dGVbIDEgXSA9ICggeHkgKyB3eiApICogc3g7XG5cdFx0dGVbIDIgXSA9ICggeHogLSB3eSApICogc3g7XG5cdFx0dGVbIDMgXSA9IDA7XG5cblx0XHR0ZVsgNCBdID0gKCB4eSAtIHd6ICkgKiBzeTtcblx0XHR0ZVsgNSBdID0gKCAxIC0gKCB4eCArIHp6ICkgKSAqIHN5O1xuXHRcdHRlWyA2IF0gPSAoIHl6ICsgd3ggKSAqIHN5O1xuXHRcdHRlWyA3IF0gPSAwO1xuXG5cdFx0dGVbIDggXSA9ICggeHogKyB3eSApICogc3o7XG5cdFx0dGVbIDkgXSA9ICggeXogLSB3eCApICogc3o7XG5cdFx0dGVbIDEwIF0gPSAoIDEgLSAoIHh4ICsgeXkgKSApICogc3o7XG5cdFx0dGVbIDExIF0gPSAwO1xuXG5cdFx0dGVbIDEyIF0gPSBwb3NpdGlvbi54O1xuXHRcdHRlWyAxMyBdID0gcG9zaXRpb24ueTtcblx0XHR0ZVsgMTQgXSA9IHBvc2l0aW9uLno7XG5cdFx0dGVbIDE1IF0gPSAxO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRkZWNvbXBvc2U6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHZhciB2ZWN0b3IgPSBuZXcgVmVjdG9yMygpO1xuXHRcdHZhciBtYXRyaXggPSBuZXcgTWF0cml4NCgpO1xuXG5cdFx0cmV0dXJuIGZ1bmN0aW9uIGRlY29tcG9zZSggcG9zaXRpb24sIHF1YXRlcm5pb24sIHNjYWxlICkge1xuXG5cdFx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXG5cdFx0XHR2YXIgc3ggPSB2ZWN0b3Iuc2V0KCB0ZVsgMCBdLCB0ZVsgMSBdLCB0ZVsgMiBdICkubGVuZ3RoKCk7XG5cdFx0XHR2YXIgc3kgPSB2ZWN0b3Iuc2V0KCB0ZVsgNCBdLCB0ZVsgNSBdLCB0ZVsgNiBdICkubGVuZ3RoKCk7XG5cdFx0XHR2YXIgc3ogPSB2ZWN0b3Iuc2V0KCB0ZVsgOCBdLCB0ZVsgOSBdLCB0ZVsgMTAgXSApLmxlbmd0aCgpO1xuXG5cdFx0XHQvLyBpZiBkZXRlcm1pbmUgaXMgbmVnYXRpdmUsIHdlIG5lZWQgdG8gaW52ZXJ0IG9uZSBzY2FsZVxuXHRcdFx0dmFyIGRldCA9IHRoaXMuZGV0ZXJtaW5hbnQoKTtcblx0XHRcdGlmICggZGV0IDwgMCApIHN4ID0gLSBzeDtcblxuXHRcdFx0cG9zaXRpb24ueCA9IHRlWyAxMiBdO1xuXHRcdFx0cG9zaXRpb24ueSA9IHRlWyAxMyBdO1xuXHRcdFx0cG9zaXRpb24ueiA9IHRlWyAxNCBdO1xuXG5cdFx0XHQvLyBzY2FsZSB0aGUgcm90YXRpb24gcGFydFxuXHRcdFx0bWF0cml4LmNvcHkoIHRoaXMgKTtcblxuXHRcdFx0dmFyIGludlNYID0gMSAvIHN4O1xuXHRcdFx0dmFyIGludlNZID0gMSAvIHN5O1xuXHRcdFx0dmFyIGludlNaID0gMSAvIHN6O1xuXG5cdFx0XHRtYXRyaXguZWxlbWVudHNbIDAgXSAqPSBpbnZTWDtcblx0XHRcdG1hdHJpeC5lbGVtZW50c1sgMSBdICo9IGludlNYO1xuXHRcdFx0bWF0cml4LmVsZW1lbnRzWyAyIF0gKj0gaW52U1g7XG5cblx0XHRcdG1hdHJpeC5lbGVtZW50c1sgNCBdICo9IGludlNZO1xuXHRcdFx0bWF0cml4LmVsZW1lbnRzWyA1IF0gKj0gaW52U1k7XG5cdFx0XHRtYXRyaXguZWxlbWVudHNbIDYgXSAqPSBpbnZTWTtcblxuXHRcdFx0bWF0cml4LmVsZW1lbnRzWyA4IF0gKj0gaW52U1o7XG5cdFx0XHRtYXRyaXguZWxlbWVudHNbIDkgXSAqPSBpbnZTWjtcblx0XHRcdG1hdHJpeC5lbGVtZW50c1sgMTAgXSAqPSBpbnZTWjtcblxuXHRcdFx0cXVhdGVybmlvbi5zZXRGcm9tUm90YXRpb25NYXRyaXgoIG1hdHJpeCApO1xuXG5cdFx0XHRzY2FsZS54ID0gc3g7XG5cdFx0XHRzY2FsZS55ID0gc3k7XG5cdFx0XHRzY2FsZS56ID0gc3o7XG5cblx0XHRcdHJldHVybiB0aGlzO1xuXG5cdFx0fTtcblxuXHR9KCksXG5cblx0bWFrZVBlcnNwZWN0aXZlOiBmdW5jdGlvbiAoIGxlZnQsIHJpZ2h0LCB0b3AsIGJvdHRvbSwgbmVhciwgZmFyICkge1xuXG5cdFx0aWYgKCBmYXIgPT09IHVuZGVmaW5lZCApIHtcblxuXHRcdFx0Y29uc29sZS53YXJuKCAnVEhSRUUuTWF0cml4NDogLm1ha2VQZXJzcGVjdGl2ZSgpIGhhcyBiZWVuIHJlZGVmaW5lZCBhbmQgaGFzIGEgbmV3IHNpZ25hdHVyZS4gUGxlYXNlIGNoZWNrIHRoZSBkb2NzLicgKTtcblxuXHRcdH1cblxuXHRcdHZhciB0ZSA9IHRoaXMuZWxlbWVudHM7XG5cdFx0dmFyIHggPSAyICogbmVhciAvICggcmlnaHQgLSBsZWZ0ICk7XG5cdFx0dmFyIHkgPSAyICogbmVhciAvICggdG9wIC0gYm90dG9tICk7XG5cblx0XHR2YXIgYSA9ICggcmlnaHQgKyBsZWZ0ICkgLyAoIHJpZ2h0IC0gbGVmdCApO1xuXHRcdHZhciBiID0gKCB0b3AgKyBib3R0b20gKSAvICggdG9wIC0gYm90dG9tICk7XG5cdFx0dmFyIGMgPSAtICggZmFyICsgbmVhciApIC8gKCBmYXIgLSBuZWFyICk7XG5cdFx0dmFyIGQgPSAtIDIgKiBmYXIgKiBuZWFyIC8gKCBmYXIgLSBuZWFyICk7XG5cblx0XHR0ZVsgMCBdID0geDtcdHRlWyA0IF0gPSAwO1x0dGVbIDggXSA9IGE7XHR0ZVsgMTIgXSA9IDA7XG5cdFx0dGVbIDEgXSA9IDA7XHR0ZVsgNSBdID0geTtcdHRlWyA5IF0gPSBiO1x0dGVbIDEzIF0gPSAwO1xuXHRcdHRlWyAyIF0gPSAwO1x0dGVbIDYgXSA9IDA7XHR0ZVsgMTAgXSA9IGM7XHR0ZVsgMTQgXSA9IGQ7XG5cdFx0dGVbIDMgXSA9IDA7XHR0ZVsgNyBdID0gMDtcdHRlWyAxMSBdID0gLSAxO1x0dGVbIDE1IF0gPSAwO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRtYWtlT3J0aG9ncmFwaGljOiBmdW5jdGlvbiAoIGxlZnQsIHJpZ2h0LCB0b3AsIGJvdHRvbSwgbmVhciwgZmFyICkge1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblx0XHR2YXIgdyA9IDEuMCAvICggcmlnaHQgLSBsZWZ0ICk7XG5cdFx0dmFyIGggPSAxLjAgLyAoIHRvcCAtIGJvdHRvbSApO1xuXHRcdHZhciBwID0gMS4wIC8gKCBmYXIgLSBuZWFyICk7XG5cblx0XHR2YXIgeCA9ICggcmlnaHQgKyBsZWZ0ICkgKiB3O1xuXHRcdHZhciB5ID0gKCB0b3AgKyBib3R0b20gKSAqIGg7XG5cdFx0dmFyIHogPSAoIGZhciArIG5lYXIgKSAqIHA7XG5cblx0XHR0ZVsgMCBdID0gMiAqIHc7XHR0ZVsgNCBdID0gMDtcdHRlWyA4IF0gPSAwO1x0dGVbIDEyIF0gPSAtIHg7XG5cdFx0dGVbIDEgXSA9IDA7XHR0ZVsgNSBdID0gMiAqIGg7XHR0ZVsgOSBdID0gMDtcdHRlWyAxMyBdID0gLSB5O1xuXHRcdHRlWyAyIF0gPSAwO1x0dGVbIDYgXSA9IDA7XHR0ZVsgMTAgXSA9IC0gMiAqIHA7XHR0ZVsgMTQgXSA9IC0gejtcblx0XHR0ZVsgMyBdID0gMDtcdHRlWyA3IF0gPSAwO1x0dGVbIDExIF0gPSAwO1x0dGVbIDE1IF0gPSAxO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRlcXVhbHM6IGZ1bmN0aW9uICggbWF0cml4ICkge1xuXG5cdFx0dmFyIHRlID0gdGhpcy5lbGVtZW50cztcblx0XHR2YXIgbWUgPSBtYXRyaXguZWxlbWVudHM7XG5cblx0XHRmb3IgKCB2YXIgaSA9IDA7IGkgPCAxNjsgaSArKyApIHtcblxuXHRcdFx0aWYgKCB0ZVsgaSBdICE9PSBtZVsgaSBdICkgcmV0dXJuIGZhbHNlO1xuXG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRydWU7XG5cblx0fSxcblxuXHRmcm9tQXJyYXk6IGZ1bmN0aW9uICggYXJyYXksIG9mZnNldCApIHtcblxuXHRcdGlmICggb2Zmc2V0ID09PSB1bmRlZmluZWQgKSBvZmZzZXQgPSAwO1xuXG5cdFx0Zm9yICggdmFyIGkgPSAwOyBpIDwgMTY7IGkgKysgKSB7XG5cblx0XHRcdHRoaXMuZWxlbWVudHNbIGkgXSA9IGFycmF5WyBpICsgb2Zmc2V0IF07XG5cblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdHRvQXJyYXk6IGZ1bmN0aW9uICggYXJyYXksIG9mZnNldCApIHtcblxuXHRcdGlmICggYXJyYXkgPT09IHVuZGVmaW5lZCApIGFycmF5ID0gW107XG5cdFx0aWYgKCBvZmZzZXQgPT09IHVuZGVmaW5lZCApIG9mZnNldCA9IDA7XG5cblx0XHR2YXIgdGUgPSB0aGlzLmVsZW1lbnRzO1xuXG5cdFx0YXJyYXlbIG9mZnNldCBdID0gdGVbIDAgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMSBdID0gdGVbIDEgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMiBdID0gdGVbIDIgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMyBdID0gdGVbIDMgXTtcblxuXHRcdGFycmF5WyBvZmZzZXQgKyA0IF0gPSB0ZVsgNCBdO1xuXHRcdGFycmF5WyBvZmZzZXQgKyA1IF0gPSB0ZVsgNSBdO1xuXHRcdGFycmF5WyBvZmZzZXQgKyA2IF0gPSB0ZVsgNiBdO1xuXHRcdGFycmF5WyBvZmZzZXQgKyA3IF0gPSB0ZVsgNyBdO1xuXG5cdFx0YXJyYXlbIG9mZnNldCArIDggXSA9IHRlWyA4IF07XG5cdFx0YXJyYXlbIG9mZnNldCArIDkgXSA9IHRlWyA5IF07XG5cdFx0YXJyYXlbIG9mZnNldCArIDEwIF0gPSB0ZVsgMTAgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMTEgXSA9IHRlWyAxMSBdO1xuXG5cdFx0YXJyYXlbIG9mZnNldCArIDEyIF0gPSB0ZVsgMTIgXTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMTMgXSA9IHRlWyAxMyBdO1xuXHRcdGFycmF5WyBvZmZzZXQgKyAxNCBdID0gdGVbIDE0IF07XG5cdFx0YXJyYXlbIG9mZnNldCArIDE1IF0gPSB0ZVsgMTUgXTtcblxuXHRcdHJldHVybiBhcnJheTtcblxuXHR9XG5cbn0gKTtcblxuXG5leHBvcnQgeyBNYXRyaXg0IH07Il19
@@ -448,4 +448,4 @@ Object.assign(Quaternion.prototype, {
448
448
  },
449
449
  _onChangeCallback: function _onChangeCallback() {}
450
450
  });
451
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb3JlL3RocmVlL1F1YXRlcm5pb24uanMiXSwibmFtZXMiOlsiUXVhdGVybmlvbiIsIngiLCJ5IiwieiIsInciLCJfeCIsIl95IiwiX3oiLCJfdyIsInVuZGVmaW5lZCIsIk9iamVjdCIsImFzc2lnbiIsInNsZXJwIiwicWEiLCJxYiIsInFtIiwidCIsImNvcHkiLCJzbGVycEZsYXQiLCJkc3QiLCJkc3RPZmZzZXQiLCJzcmMwIiwic3JjT2Zmc2V0MCIsInNyYzEiLCJzcmNPZmZzZXQxIiwieDAiLCJ5MCIsInowIiwidzAiLCJ4MSIsInkxIiwiejEiLCJ3MSIsInMiLCJjb3MiLCJkaXIiLCJzcXJTaW4iLCJOdW1iZXIiLCJFUFNJTE9OIiwic2luIiwiTWF0aCIsInNxcnQiLCJsZW4iLCJhdGFuMiIsInREaXIiLCJmIiwiZGVmaW5lUHJvcGVydGllcyIsInByb3RvdHlwZSIsImdldCIsInNldCIsInZhbHVlIiwiX29uQ2hhbmdlQ2FsbGJhY2siLCJpc1F1YXRlcm5pb24iLCJjbG9uZSIsImNvbnN0cnVjdG9yIiwicXVhdGVybmlvbiIsInNldEZyb21FdWxlciIsImV1bGVyIiwidXBkYXRlIiwiaXNFdWxlciIsIkVycm9yIiwib3JkZXIiLCJjMSIsImMyIiwiYzMiLCJzMSIsInMyIiwiczMiLCJzZXRGcm9tQXhpc0FuZ2xlIiwiYXhpcyIsImFuZ2xlIiwiaGFsZkFuZ2xlIiwic2V0RnJvbVJvdGF0aW9uTWF0cml4IiwibSIsInRlIiwiZWxlbWVudHMiLCJtMTEiLCJtMTIiLCJtMTMiLCJtMjEiLCJtMjIiLCJtMjMiLCJtMzEiLCJtMzIiLCJtMzMiLCJ0cmFjZSIsInNldEZyb21Vbml0VmVjdG9ycyIsInZGcm9tIiwidlRvIiwiRVBTIiwiciIsImRvdCIsImFicyIsIm5vcm1hbGl6ZSIsImFuZ2xlVG8iLCJxIiwiYWNvcyIsIl9NYXRoIiwiY2xhbXAiLCJyb3RhdGVUb3dhcmRzIiwic3RlcCIsIm1pbiIsImludmVyc2UiLCJjb25qdWdhdGUiLCJ2IiwibGVuZ3RoU3EiLCJsZW5ndGgiLCJsIiwibXVsdGlwbHkiLCJwIiwiY29uc29sZSIsIndhcm4iLCJtdWx0aXBseVF1YXRlcm5pb25zIiwicHJlbXVsdGlwbHkiLCJhIiwiYiIsInFheCIsInFheSIsInFheiIsInFhdyIsInFieCIsInFieSIsInFieiIsInFidyIsImNvc0hhbGZUaGV0YSIsInNxclNpbkhhbGZUaGV0YSIsInNpbkhhbGZUaGV0YSIsImhhbGZUaGV0YSIsInJhdGlvQSIsInJhdGlvQiIsImVxdWFscyIsImZyb21BcnJheSIsImFycmF5Iiwib2Zmc2V0IiwidG9BcnJheSIsIl9vbkNoYW5nZSIsImNhbGxiYWNrIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBT0E7O0FBUEE7Ozs7OztBQVNBLFNBQVNBLFVBQVQsQ0FBcUJDLENBQXJCLEVBQXdCQyxDQUF4QixFQUEyQkMsQ0FBM0IsRUFBOEJDLENBQTlCLEVBQWtDO0FBRWpDLE9BQUtDLEVBQUwsR0FBVUosQ0FBQyxJQUFJLENBQWY7QUFDQSxPQUFLSyxFQUFMLEdBQVVKLENBQUMsSUFBSSxDQUFmO0FBQ0EsT0FBS0ssRUFBTCxHQUFVSixDQUFDLElBQUksQ0FBZjtBQUNBLE9BQUtLLEVBQUwsR0FBWUosQ0FBQyxLQUFLSyxTQUFSLEdBQXNCTCxDQUF0QixHQUEwQixDQUFwQztBQUVBOztBQUVETSxNQUFNLENBQUNDLE1BQVAsQ0FBZVgsVUFBZixFQUEyQjtBQUUxQlksRUFBQUEsS0FBSyxFQUFFLGVBQVdDLEVBQVgsRUFBZUMsRUFBZixFQUFtQkMsRUFBbkIsRUFBdUJDLENBQXZCLEVBQTJCO0FBRWpDLFdBQU9ELEVBQUUsQ0FBQ0UsSUFBSCxDQUFTSixFQUFULEVBQWNELEtBQWQsQ0FBcUJFLEVBQXJCLEVBQXlCRSxDQUF6QixDQUFQO0FBRUEsR0FOeUI7QUFRMUJFLEVBQUFBLFNBQVMsRUFBRSxtQkFBV0MsR0FBWCxFQUFnQkMsU0FBaEIsRUFBMkJDLElBQTNCLEVBQWlDQyxVQUFqQyxFQUE2Q0MsSUFBN0MsRUFBbURD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LE1BQU0sR0FBRyxDQUFYLENBQUwsR0FBc0IsS0FBSzdILEVBQTNCO0FBRUEsV0FBTzRILEtBQVA7QUFFQSxHQTFjbUM7QUE0Y3BDRyxFQUFBQSxTQUFTLEVBQUUsbUJBQVdDLFFBQVgsRUFBc0I7QUFFaEMsU0FBS3JGLGlCQUFMLEdBQXlCcUYsUUFBekI7QUFFQSxXQUFPLElBQVA7QUFFQSxHQWxkbUM7QUFvZHBDckYsRUFBQUEsaUJBQWlCLEVBQUUsNkJBQVksQ0FBRTtBQXBkRyxDQUFyQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGF1dGhvciBtaWthZWwgZW10aW5nZXIgLyBodHRwOi8vZ29tby5zZS9cbiAqIEBhdXRob3IgYWx0ZXJlZHEgLyBodHRwOi8vYWx0ZXJlZHF1YWxpYS5jb20vXG4gKiBAYXV0aG9yIFdlc3RMYW5nbGV5IC8gaHR0cDovL2dpdGh1Yi5jb20vV2VzdExhbmdsZXlcbiAqIEBhdXRob3IgYmhvdXN0b24gLyBodHRwOi8vY2xhcmEuaW9cbiAqL1xuXG5pbXBvcnQgeyBfTWF0aCB9IGZyb20gJy4vTWF0aC5qcyc7XG5cbmZ1bmN0aW9uIFF1YXRlcm5pb24oIHgsIHksIHosIHcgKSB7XG5cblx0dGhpcy5feCA9IHggfHwgMDtcblx0dGhpcy5feSA9IHkgfHwgMDtcblx0dGhpcy5feiA9IHogfHwgMDtcblx0dGhpcy5fdyA9ICggdyAhPT0gdW5kZWZpbmVkICkgPyB3IDogMTtcblxufVxuXG5PYmplY3QuYXNzaWduKCBRdWF0ZXJuaW9uLCB7XG5cblx0c2xlcnA6IGZ1bmN0aW9uICggcWEsIHFiLCBxbSwgdCApIHtcblxuXHRcdHJldHVybiBxbS5jb3B5KCBxYSApLnNsZXJwKCBxYiwgdCApO1xuXG5cdH0sXG5cblx0c2xlcnBGbGF0OiBmdW5jdGlvbiAoIGRzdCwgZHN0T2Zmc2V0LCBzcmMwLCBzcmNPZmZzZXQwLCBzcmMxLCBzcmNPZmZzZXQxLCB0ICkge1xuXG5cdFx0Ly8gZnV6ei1mcmVlLCBhcnJheS1iYXNlZCBRdWF0ZXJuaW9uIFNMRVJQIG9wZXJhdGlvblxuXG5cdFx0dmFyIHgwID0gc3JjMFsgc3JjT2Zmc2V0MCArIDAgXSxcblx0XHRcdHkwID0gc3JjMFsgc3JjT2Zmc2V0MCArIDEgXSxcblx0XHRcdHowID0gc3JjMFsgc3JjT2Zmc2V0MCArIDIgXSxcblx0XHRcdHcwID0gc3JjMFsgc3JjT2Zmc2V0MCArIDMgXSxcblxuXHRcdFx0eDEgPSBzcmMxWyBzcmNPZmZzZXQxICsgMCBdLFxuXHRcdFx0eTEgPSBzcmMxWyBzcmNPZmZzZXQxICsgMSBdLFxuXHRcdFx0ejEgPSBzcmMxWyBzcmNPZmZzZXQxICsgMiBdLFxuXHRcdFx0dzEgPSBzcmMxWyBzcmNPZmZzZXQxICsgMyBdO1xuXG5cdFx0aWYgKCB3MCAhPT0gdzEgfHwgeDAgIT09IHgxIHx8IHkwICE9PSB5MSB8fCB6MCAhPT0gejEgKSB7XG5cblx0XHRcdHZhciBzID0gMSAtIHQsXG5cblx0XHRcdFx0Y29zID0geDAgKiB4MSArIHkwICogeTEgKyB6MCAqIHoxICsgdzAgKiB3MSxcblxuXHRcdFx0XHRkaXIgPSAoIGNvcyA+PSAwID8gMSA6IC0gMSApLFxuXHRcdFx0XHRzcXJTaW4gPSAxIC0gY29zICogY29zO1xuXG5cdFx0XHQvLyBTa2lwIHRoZSBTbGVycCBmb3IgdGlueSBzdGVwcyB0byBhdm9pZCBudW1lcmljIHByb2JsZW1zOlxuXHRcdFx0aWYgKCBzcXJTaW4gPiBOdW1iZXIuRVBTSUxPTiApIHtcblxuXHRcdFx0XHR2YXIgc2luID0gTWF0aC5zcXJ0KCBzcXJTaW4gKSxcblx0XHRcdFx0XHRsZW4gPSBNYXRoLmF0YW4yKCBzaW4sIGNvcyAqIGRpciApO1xuXG5cdFx0XHRcdHMgPSBNYXRoLnNpbiggcyAqIGxlbiApIC8gc2luO1xuXHRcdFx0XHR0ID0gTWF0aC5zaW4oIHQgKiBsZW4gKSAvIHNpbjtcblxuXHRcdFx0fVxuXG5cdFx0XHR2YXIgdERpciA9IHQgKiBkaXI7XG5cblx0XHRcdHgwID0geDAgKiBzICsgeDEgKiB0RGlyO1xuXHRcdFx0eTAgPSB5MCAqIHMgKyB5MSAqIHREaXI7XG5cdFx0XHR6MCA9IHowICogcyArIHoxICogdERpcjtcblx0XHRcdHcwID0gdzAgKiBzICsgdzEgKiB0RGlyO1xuXG5cdFx0XHQvLyBOb3JtYWxpemUgaW4gY2FzZSB3ZSBqdXN0IGRpZCBhIGxlcnA6XG5cdFx0XHRpZiAoIHMgPT09IDEgLSB0ICkge1xuXG5cdFx0XHRcdHZhciBmID0gMSAvIE1hdGguc3FydCggeDAgKiB4MCArIHkwICogeTAgKyB6MCAqIHowICsgdzAgKiB3MCApO1xuXG5cdFx0XHRcdHgwICo9IGY7XG5cdFx0XHRcdHkwICo9IGY7XG5cdFx0XHRcdHowICo9IGY7XG5cdFx0XHRcdHcwICo9IGY7XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdGRzdFsgZHN0T2Zmc2V0IF0gPSB4MDtcblx0XHRkc3RbIGRzdE9mZnNldCArIDEgXSA9IHkwO1xuXHRcdGRzdFsgZHN0T2Zmc2V0ICsgMiBdID0gejA7XG5cdFx0ZHN0WyBkc3RPZmZzZXQgKyAzIF0gPSB3MDtcblxuXHR9XG5cbn0gKTtcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoIFF1YXRlcm5pb24ucHJvdG90eXBlLCB7XG5cblx0eDoge1xuXG5cdFx0Z2V0OiBmdW5jdGlvbiAoKSB7XG5cblx0XHRcdHJldHVybiB0aGlzLl94O1xuXG5cdFx0fSxcblxuXHRcdHNldDogZnVuY3Rpb24gKCB2YWx1ZSApIHtcblxuXHRcdFx0dGhpcy5feCA9IHZhbHVlO1xuXHRcdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0fVxuXG5cdH0sXG5cblx0eToge1xuXG5cdFx0Z2V0OiBmdW5jdGlvbiAoKSB7XG5cblx0XHRcdHJldHVybiB0aGlzLl95O1xuXG5cdFx0fSxcblxuXHRcdHNldDogZnVuY3Rpb24gKCB2YWx1ZSApIHtcblxuXHRcdFx0dGhpcy5feSA9IHZhbHVlO1xuXHRcdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0fVxuXG5cdH0sXG5cblx0ejoge1xuXG5cdFx0Z2V0OiBmdW5jdGlvbiAoKSB7XG5cblx0XHRcdHJldHVybiB0aGlzLl96O1xuXG5cdFx0fSxcblxuXHRcdHNldDogZnVuY3Rpb24gKCB2YWx1ZSApIHtcblxuXHRcdFx0dGhpcy5feiA9IHZhbHVlO1xuXHRcdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0fVxuXG5cdH0sXG5cblx0dzoge1xuXG5cdFx0Z2V0OiBmdW5jdGlvbiAoKSB7XG5cblx0XHRcdHJldHVybiB0aGlzLl93O1xuXG5cdFx0fSxcblxuXHRcdHNldDogZnVuY3Rpb24gKCB2YWx1ZSApIHtcblxuXHRcdFx0dGhpcy5fdyA9IHZhbHVlO1xuXHRcdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0fVxuXG5cdH1cblxufSApO1xuXG5PYmplY3QuYXNzaWduKCBRdWF0ZXJuaW9uLnByb3RvdHlwZSwge1xuXG5cdGlzUXVhdGVybmlvbjogdHJ1ZSxcblxuXHRzZXQ6IGZ1bmN0aW9uICggeCwgeSwgeiwgdyApIHtcblxuXHRcdHRoaXMuX3ggPSB4O1xuXHRcdHRoaXMuX3kgPSB5O1xuXHRcdHRoaXMuX3ogPSB6O1xuXHRcdHRoaXMuX3cgPSB3O1xuXG5cdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRjbG9uZTogZnVuY3Rpb24gKCkge1xuXG5cdFx0cmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKCB0aGlzLl94LCB0aGlzLl95LCB0aGlzLl96LCB0aGlzLl93ICk7XG5cblx0fSxcblxuXHRjb3B5OiBmdW5jdGlvbiAoIHF1YXRlcm5pb24gKSB7XG5cblx0XHR0aGlzLl94ID0gcXVhdGVybmlvbi54O1xuXHRcdHRoaXMuX3kgPSBxdWF0ZXJuaW9uLnk7XG5cdFx0dGhpcy5feiA9IHF1YXRlcm5pb24uejtcblx0XHR0aGlzLl93ID0gcXVhdGVybmlvbi53O1xuXG5cdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRzZXRGcm9tRXVsZXI6IGZ1bmN0aW9uICggZXVsZXIsIHVwZGF0ZSApIHtcblxuXHRcdGlmICggISAoIGV1bGVyICYmIGV1bGVyLmlzRXVsZXIgKSApIHtcblxuXHRcdFx0dGhyb3cgbmV3IEVycm9yKCAnVEhSRUUuUXVhdGVybmlvbjogLnNldEZyb21FdWxlcigpIG5vdyBleHBlY3RzIGFuIEV1bGVyIHJvdGF0aW9uIHJhdGhlciB0aGFuIGEgVmVjdG9yMyBhbmQgb3JkZXIuJyApO1xuXG5cdFx0fVxuXG5cdFx0dmFyIHggPSBldWxlci5feCwgeSA9IGV1bGVyLl95LCB6ID0gZXVsZXIuX3osIG9yZGVyID0gZXVsZXIub3JkZXI7XG5cblx0XHQvLyBodHRwOi8vd3d3Lm1hdGh3b3Jrcy5jb20vbWF0bGFiY2VudHJhbC9maWxlZXhjaGFuZ2UvXG5cdFx0Ly8gXHQyMDY5Ni1mdW5jdGlvbi10by1jb252ZXJ0LWJldHdlZW4tZGNtLWV1bGVyLWFuZ2xlcy1xdWF0ZXJuaW9ucy1hbmQtZXVsZXItdmVjdG9ycy9cblx0XHQvL1x0Y29udGVudC9TcGluQ2FsYy5tXG5cblx0XHR2YXIgY29zID0gTWF0aC5jb3M7XG5cdFx0dmFyIHNpbiA9IE1hdGguc2luO1xuXG5cdFx0dmFyIGMxID0gY29zKCB4IC8gMiApO1xuXHRcdHZhciBjMiA9IGNvcyggeSAvIDIgKTtcblx0XHR2YXIgYzMgPSBjb3MoIHogLyAyICk7XG5cblx0XHR2YXIgczEgPSBzaW4oIHggLyAyICk7XG5cdFx0dmFyIHMyID0gc2luKCB5IC8gMiApO1xuXHRcdHZhciBzMyA9IHNpbiggeiAvIDIgKTtcblxuXHRcdGlmICggb3JkZXIgPT09ICdYWVonICkge1xuXG5cdFx0XHR0aGlzLl94ID0gczEgKiBjMiAqIGMzICsgYzEgKiBzMiAqIHMzO1xuXHRcdFx0dGhpcy5feSA9IGMxICogczIgKiBjMyAtIHMxICogYzIgKiBzMztcblx0XHRcdHRoaXMuX3ogPSBjMSAqIGMyICogczMgKyBzMSAqIHMyICogYzM7XG5cdFx0XHR0aGlzLl93ID0gYzEgKiBjMiAqIGMzIC0gczEgKiBzMiAqIHMzO1xuXG5cdFx0fSBlbHNlIGlmICggb3JkZXIgPT09ICdZWFonICkge1xuXG5cdFx0XHR0aGlzLl94ID0gczEgKiBjMiAqIGMzICsgYzEgKiBzMiAqIHMzO1xuXHRcdFx0dGhpcy5feSA9IGMxICogczIgKiBjMyAtIHMxICogYzIgKiBzMztcblx0XHRcdHRoaXMuX3ogPSBjMSAqIGMyICogczMgLSBzMSAqIHMyICogYzM7XG5cdFx0XHR0aGlzLl93ID0gYzEgKiBjMiAqIGMzICsgczEgKiBzMiAqIHMzO1xuXG5cdFx0fSBlbHNlIGlmICggb3JkZXIgPT09ICdaWFknICkge1xuXG5cdFx0XHR0aGlzLl94ID0gczEgKiBjMiAqIGMzIC0gYzEgKiBzMiAqIHMzO1xuXHRcdFx0dGhpcy5feSA9IGMxICogczIgKiBjMyArIHMxICogYzIgKiBzMztcblx0XHRcdHRoaXMuX3ogPSBjMSAqIGMyICogczMgKyBzMSAqIHMyICogYzM7XG5cdFx0XHR0aGlzLl93ID0gYzEgKiBjMiAqIGMzIC0gczEgKiBzMiAqIHMzO1xuXG5cdFx0fSBlbHNlIGlmICggb3JkZXIgPT09ICdaWVgnICkge1xuXG5cdFx0XHR0aGlzLl94ID0gczEgKiBjMiAqIGMzIC0gYzEgKiBzMiAqIHMzO1xuXHRcdFx0dGhpcy5feSA9IGMxICogczIgKiBjMyArIHMxICogYzIgKiBzMztcblx0XHRcdHRoaXMuX3ogPSBjMSAqIGMyICogczMgLSBzMSAqIHMyICogYzM7XG5cdFx0XHR0aGlzLl93ID0gYzEgKiBjMiAqIGMzICsgczEgKiBzMiAqIHMzO1xuXG5cdFx0fSBlbHNlIGlmICggb3JkZXIgPT09ICdZWlgnICkge1xuXG5cdFx0XHR0aGlzLl94ID0gczEgKiBjMiAqIGMzICsgYzEgKiBzMiAqIHMzO1xuXHRcdFx0dGhpcy5feSA9IGMxICogczIgKiBjMyArIHMxICogYzIgKiBzMztcblx0XHRcdHRoaXMuX3ogPSBjMSAqIGMyICogczMgLSBzMSAqIHMyICogYzM7XG5cdFx0XHR0aGlzLl93ID0gYzEgKiBjMiAqIGMzIC0gczEgKiBzMiAqIHMzO1xuXG5cdFx0fSBlbHNlIGlmICggb3JkZXIgPT09ICdYWlknICkge1xuXG5cdFx0XHR0aGlzLl94ID0gczEgKiBjMiAqIGMzIC0gYzEgKiBzMiAqIHMzO1xuXHRcdFx0dGhpcy5feSA9IGMxICogczIgKiBjMyAtIHMxICogYzIgKiBzMztcblx0XHRcdHRoaXMuX3ogPSBjMSAqIGMyICogczMgKyBzMSAqIHMyICogYzM7XG5cdFx0XHR0aGlzLl93ID0gYzEgKiBjMiAqIGMzICsgczEgKiBzMiAqIHMzO1xuXG5cdFx0fVxuXG5cdFx0aWYgKCB1cGRhdGUgIT09IGZhbHNlICkgdGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRzZXRGcm9tQXhpc0FuZ2xlOiBmdW5jdGlvbiAoIGF4aXMsIGFuZ2xlICkge1xuXG5cdFx0Ly8gaHR0cDovL3d3dy5ldWNsaWRlYW5zcGFjZS5jb20vbWF0aHMvZ2VvbWV0cnkvcm90YXRpb25zL2NvbnZlcnNpb25zL2FuZ2xlVG9RdWF0ZXJuaW9uL2luZGV4Lmh0bVxuXG5cdFx0Ly8gYXNzdW1lcyBheGlzIGlzIG5vcm1hbGl6ZWRcblxuXHRcdHZhciBoYWxmQW5nbGUgPSBhbmdsZSAvIDIsIHMgPSBNYXRoLnNpbiggaGFsZkFuZ2xlICk7XG5cblx0XHR0aGlzLl94ID0gYXhpcy54ICogcztcblx0XHR0aGlzLl95ID0gYXhpcy55ICogcztcblx0XHR0aGlzLl96ID0gYXhpcy56ICogcztcblx0XHR0aGlzLl93ID0gTWF0aC5jb3MoIGhhbGZBbmdsZSApO1xuXG5cdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRzZXRGcm9tUm90YXRpb25NYXRyaXg6IGZ1bmN0aW9uICggbSApIHtcblxuXHRcdC8vIGh0dHA6Ly93d3cuZXVjbGlkZWFuc3BhY2UuY29tL21hdGhzL2dlb21ldHJ5L3JvdGF0aW9ucy9jb252ZXJzaW9ucy9tYXRyaXhUb1F1YXRlcm5pb24vaW5kZXguaHRtXG5cblx0XHQvLyBhc3N1bWVzIHRoZSB1cHBlciAzeDMgb2YgbSBpcyBhIHB1cmUgcm90YXRpb24gbWF0cml4IChpLmUsIHVuc2NhbGVkKVxuXG5cdFx0dmFyIHRlID0gbS5lbGVtZW50cyxcblxuXHRcdFx0bTExID0gdGVbIDAgXSwgbTEyID0gdGVbIDQgXSwgbTEzID0gdGVbIDggXSxcblx0XHRcdG0yMSA9IHRlWyAxIF0sIG0yMiA9IHRlWyA1IF0sIG0yMyA9IHRlWyA5IF0sXG5cdFx0XHRtMzEgPSB0ZVsgMiBdLCBtMzIgPSB0ZVsgNiBdLCBtMzMgPSB0ZVsgMTAgXSxcblxuXHRcdFx0dHJhY2UgPSBtMTEgKyBtMjIgKyBtMzMsXG5cdFx0XHRzO1xuXG5cdFx0aWYgKCB0cmFjZSA+IDAgKSB7XG5cblx0XHRcdHMgPSAwLjUgLyBNYXRoLnNxcnQoIHRyYWNlICsgMS4wICk7XG5cblx0XHRcdHRoaXMuX3cgPSAwLjI1IC8gcztcblx0XHRcdHRoaXMuX3ggPSAoIG0zMiAtIG0yMyApICogcztcblx0XHRcdHRoaXMuX3kgPSAoIG0xMyAtIG0zMSApICogcztcblx0XHRcdHRoaXMuX3ogPSAoIG0yMSAtIG0xMiApICogcztcblxuXHRcdH0gZWxzZSBpZiAoIG0xMSA+IG0yMiAmJiBtMTEgPiBtMzMgKSB7XG5cblx0XHRcdHMgPSAyLjAgKiBNYXRoLnNxcnQoIDEuMCArIG0xMSAtIG0yMiAtIG0zMyApO1xuXG5cdFx0XHR0aGlzLl93ID0gKCBtMzIgLSBtMjMgKSAvIHM7XG5cdFx0XHR0aGlzLl94ID0gMC4yNSAqIHM7XG5cdFx0XHR0aGlzLl95ID0gKCBtMTIgKyBtMjEgKSAvIHM7XG5cdFx0XHR0aGlzLl96ID0gKCBtMTMgKyBtMzEgKSAvIHM7XG5cblx0XHR9IGVsc2UgaWYgKCBtMjIgPiBtMzMgKSB7XG5cblx0XHRcdHMgPSAyLjAgKiBNYXRoLnNxcnQoIDEuMCArIG0yMiAtIG0xMSAtIG0zMyApO1xuXG5cdFx0XHR0aGlzLl93ID0gKCBtMTMgLSBtMzEgKSAvIHM7XG5cdFx0XHR0aGlzLl94ID0gKCBtMTIgKyBtMjEgKSAvIHM7XG5cdFx0XHR0aGlzLl95ID0gMC4yNSAqIHM7XG5cdFx0XHR0aGlzLl96ID0gKCBtMjMgKyBtMzIgKSAvIHM7XG5cblx0XHR9IGVsc2Uge1xuXG5cdFx0XHRzID0gMi4wICogTWF0aC5zcXJ0KCAxLjAgKyBtMzMgLSBtMTEgLSBtMjIgKTtcblxuXHRcdFx0dGhpcy5fdyA9ICggbTIxIC0gbTEyICkgLyBzO1xuXHRcdFx0dGhpcy5feCA9ICggbTEzICsgbTMxICkgLyBzO1xuXHRcdFx0dGhpcy5feSA9ICggbTIzICsgbTMyICkgLyBzO1xuXHRcdFx0dGhpcy5feiA9IDAuMjUgKiBzO1xuXG5cdFx0fVxuXG5cdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRzZXRGcm9tVW5pdFZlY3RvcnM6IGZ1bmN0aW9uICggdkZyb20sIHZUbyApIHtcblxuXHRcdC8vIGFzc3VtZXMgZGlyZWN0aW9uIHZlY3RvcnMgdkZyb20gYW5kIHZUbyBhcmUgbm9ybWFsaXplZFxuXG5cdFx0dmFyIEVQUyA9IDAuMDAwMDAxO1xuXG5cdFx0dmFyIHIgPSB2RnJvbS5kb3QoIHZUbyApICsgMTtcblxuXHRcdGlmICggciA8IEVQUyApIHtcblxuXHRcdFx0ciA9IDA7XG5cblx0XHRcdGlmICggTWF0aC5hYnMoIHZGcm9tLnggKSA+IE1hdGguYWJzKCB2RnJvbS56ICkgKSB7XG5cblx0XHRcdFx0dGhpcy5feCA9IC0gdkZyb20ueTtcblx0XHRcdFx0dGhpcy5feSA9IHZGcm9tLng7XG5cdFx0XHRcdHRoaXMuX3ogPSAwO1xuXHRcdFx0XHR0aGlzLl93ID0gcjtcblxuXHRcdFx0fSBlbHNlIHtcblxuXHRcdFx0XHR0aGlzLl94ID0gMDtcblx0XHRcdFx0dGhpcy5feSA9IC0gdkZyb20uejtcblx0XHRcdFx0dGhpcy5feiA9IHZGcm9tLnk7XG5cdFx0XHRcdHRoaXMuX3cgPSByO1xuXG5cdFx0XHR9XG5cblx0XHR9IGVsc2Uge1xuXG5cdFx0XHQvLyBjcm9zc1ZlY3RvcnMoIHZGcm9tLCB2VG8gKTsgLy8gaW5saW5lZCB0byBhdm9pZCBjeWNsaWMgZGVwZW5kZW5jeSBvbiBWZWN0b3IzXG5cblx0XHRcdHRoaXMuX3ggPSB2RnJvbS55ICogdlRvLnogLSB2RnJvbS56ICogdlRvLnk7XG5cdFx0XHR0aGlzLl95ID0gdkZyb20ueiAqIHZUby54IC0gdkZyb20ueCAqIHZUby56O1xuXHRcdFx0dGhpcy5feiA9IHZGcm9tLnggKiB2VG8ueSAtIHZGcm9tLnkgKiB2VG8ueDtcblx0XHRcdHRoaXMuX3cgPSByO1xuXG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXMubm9ybWFsaXplKCk7XG5cblx0fSxcblxuXHRhbmdsZVRvOiBmdW5jdGlvbiAoIHEgKSB7XG5cblx0XHRyZXR1cm4gMiAqIE1hdGguYWNvcyggTWF0aC5hYnMoIF9NYXRoLmNsYW1wKCB0aGlzLmRvdCggcSApLCAtIDEsIDEgKSApICk7XG5cblx0fSxcblxuXHRyb3RhdGVUb3dhcmRzOiBmdW5jdGlvbiAoIHEsIHN0ZXAgKSB7XG5cblx0XHR2YXIgYW5nbGUgPSB0aGlzLmFuZ2xlVG8oIHEgKTtcblxuXHRcdGlmICggYW5nbGUgPT09IDAgKSByZXR1cm4gdGhpcztcblxuXHRcdHZhciB0ID0gTWF0aC5taW4oIDEsIHN0ZXAgLyBhbmdsZSApO1xuXG5cdFx0dGhpcy5zbGVycCggcSwgdCApO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRpbnZlcnNlOiBmdW5jdGlvbiAoKSB7XG5cblx0XHQvLyBxdWF0ZXJuaW9uIGlzIGFzc3VtZWQgdG8gaGF2ZSB1bml0IGxlbmd0aFxuXG5cdFx0cmV0dXJuIHRoaXMuY29uanVnYXRlKCk7XG5cblx0fSxcblxuXHRjb25qdWdhdGU6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHRoaXMuX3ggKj0gLSAxO1xuXHRcdHRoaXMuX3kgKj0gLSAxO1xuXHRcdHRoaXMuX3ogKj0gLSAxO1xuXG5cdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRkb3Q6IGZ1bmN0aW9uICggdiApIHtcblxuXHRcdHJldHVybiB0aGlzLl94ICogdi5feCArIHRoaXMuX3kgKiB2Ll95ICsgdGhpcy5feiAqIHYuX3ogKyB0aGlzLl93ICogdi5fdztcblxuXHR9LFxuXG5cdGxlbmd0aFNxOiBmdW5jdGlvbiAoKSB7XG5cblx0XHRyZXR1cm4gdGhpcy5feCAqIHRoaXMuX3ggKyB0aGlzLl95ICogdGhpcy5feSArIHRoaXMuX3ogKiB0aGlzLl96ICsgdGhpcy5fdyAqIHRoaXMuX3c7XG5cblx0fSxcblxuXHRsZW5ndGg6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHJldHVybiBNYXRoLnNxcnQoIHRoaXMuX3ggKiB0aGlzLl94ICsgdGhpcy5feSAqIHRoaXMuX3kgKyB0aGlzLl96ICogdGhpcy5feiArIHRoaXMuX3cgKiB0aGlzLl93ICk7XG5cblx0fSxcblxuXHRub3JtYWxpemU6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHZhciBsID0gdGhpcy5sZW5ndGgoKTtcblxuXHRcdGlmICggbCA9PT0gMCApIHtcblxuXHRcdFx0dGhpcy5feCA9IDA7XG5cdFx0XHR0aGlzLl95ID0gMDtcblx0XHRcdHRoaXMuX3ogPSAwO1xuXHRcdFx0dGhpcy5fdyA9IDE7XG5cblx0XHR9IGVsc2Uge1xuXG5cdFx0XHRsID0gMSAvIGw7XG5cblx0XHRcdHRoaXMuX3ggPSB0aGlzLl94ICogbDtcblx0XHRcdHRoaXMuX3kgPSB0aGlzLl95ICogbDtcblx0XHRcdHRoaXMuX3ogPSB0aGlzLl96ICogbDtcblx0XHRcdHRoaXMuX3cgPSB0aGlzLl93ICogbDtcblxuXHRcdH1cblxuXHRcdHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0bXVsdGlwbHk6IGZ1bmN0aW9uICggcSwgcCApIHtcblxuXHRcdGlmICggcCAhPT0gdW5kZWZpbmVkICkge1xuXG5cdFx0XHRjb25zb2xlLndhcm4oICdUSFJFRS5RdWF0ZXJuaW9uOiAubXVsdGlwbHkoKSBub3cgb25seSBhY2NlcHRzIG9uZSBhcmd1bWVudC4gVXNlIC5tdWx0aXBseVF1YXRlcm5pb25zKCBhLCBiICkgaW5zdGVhZC4nICk7XG5cdFx0XHRyZXR1cm4gdGhpcy5tdWx0aXBseVF1YXRlcm5pb25zKCBxLCBwICk7XG5cblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcy5tdWx0aXBseVF1YXRlcm5pb25zKCB0aGlzLCBxICk7XG5cblx0fSxcblxuXHRwcmVtdWx0aXBseTogZnVuY3Rpb24gKCBxICkge1xuXG5cdFx0cmV0dXJuIHRoaXMubXVsdGlwbHlRdWF0ZXJuaW9ucyggcSwgdGhpcyApO1xuXG5cdH0sXG5cblx0bXVsdGlwbHlRdWF0ZXJuaW9uczogZnVuY3Rpb24gKCBhLCBiICkge1xuXG5cdFx0Ly8gZnJvbSBodHRwOi8vd3d3LmV1Y2xpZGVhbnNwYWNlLmNvbS9tYXRocy9hbGdlYnJhL3JlYWxOb3JtZWRBbGdlYnJhL3F1YXRlcm5pb25zL2NvZGUvaW5kZXguaHRtXG5cblx0XHR2YXIgcWF4ID0gYS5feCwgcWF5ID0gYS5feSwgcWF6ID0gYS5feiwgcWF3ID0gYS5fdztcblx0XHR2YXIgcWJ4ID0gYi5feCwgcWJ5ID0gYi5feSwgcWJ6ID0gYi5feiwgcWJ3ID0gYi5fdztcblxuXHRcdHRoaXMuX3ggPSBxYXggKiBxYncgKyBxYXcgKiBxYnggKyBxYXkgKiBxYnogLSBxYXogKiBxYnk7XG5cdFx0dGhpcy5feSA9IHFheSAqIHFidyArIHFhdyAqIHFieSArIHFheiAqIHFieCAtIHFheCAqIHFiejtcblx0XHR0aGlzLl96ID0gcWF6ICogcWJ3ICsgcWF3ICogcWJ6ICsgcWF4ICogcWJ5IC0gcWF5ICogcWJ4O1xuXHRcdHRoaXMuX3cgPSBxYXcgKiBxYncgLSBxYXggKiBxYnggLSBxYXkgKiBxYnkgLSBxYXogKiBxYno7XG5cblx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdHNsZXJwOiBmdW5jdGlvbiAoIHFiLCB0ICkge1xuXG5cdFx0aWYgKCB0ID09PSAwICkgcmV0dXJuIHRoaXM7XG5cdFx0aWYgKCB0ID09PSAxICkgcmV0dXJuIHRoaXMuY29weSggcWIgKTtcblxuXHRcdHZhciB4ID0gdGhpcy5feCwgeSA9IHRoaXMuX3ksIHogPSB0aGlzLl96LCB3ID0gdGhpcy5fdztcblxuXHRcdC8vIGh0dHA6Ly93d3cuZXVjbGlkZWFuc3BhY2UuY29tL21hdGhzL2FsZ2VicmEvcmVhbE5vcm1lZEFsZ2VicmEvcXVhdGVybmlvbnMvc2xlcnAvXG5cblx0XHR2YXIgY29zSGFsZlRoZXRhID0gdyAqIHFiLl93ICsgeCAqIHFiLl94ICsgeSAqIHFiLl95ICsgeiAqIHFiLl96O1xuXG5cdFx0aWYgKCBjb3NIYWxmVGhldGEgPCAwICkge1xuXG5cdFx0XHR0aGlzLl93ID0gLSBxYi5fdztcblx0XHRcdHRoaXMuX3ggPSAtIHFiLl94O1xuXHRcdFx0dGhpcy5feSA9IC0gcWIuX3k7XG5cdFx0XHR0aGlzLl96ID0gLSBxYi5fejtcblxuXHRcdFx0Y29zSGFsZlRoZXRhID0gLSBjb3NIYWxmVGhldGE7XG5cblx0XHR9IGVsc2Uge1xuXG5cdFx0XHR0aGlzLmNvcHkoIHFiICk7XG5cblx0XHR9XG5cblx0XHRpZiAoIGNvc0hhbGZUaGV0YSA+PSAxLjAgKSB7XG5cblx0XHRcdHRoaXMuX3cgPSB3O1xuXHRcdFx0dGhpcy5feCA9IHg7XG5cdFx0XHR0aGlzLl95ID0geTtcblx0XHRcdHRoaXMuX3ogPSB6O1xuXG5cdFx0XHRyZXR1cm4gdGhpcztcblxuXHRcdH1cblxuXHRcdHZhciBzcXJTaW5IYWxmVGhldGEgPSAxLjAgLSBjb3NIYWxmVGhldGEgKiBjb3NIYWxmVGhldGE7XG5cblx0XHRpZiAoIHNxclNpbkhhbGZUaGV0YSA8PSBOdW1iZXIuRVBTSUxPTiApIHtcblxuXHRcdFx0dmFyIHMgPSAxIC0gdDtcblx0XHRcdHRoaXMuX3cgPSBzICogdyArIHQgKiB0aGlzLl93O1xuXHRcdFx0dGhpcy5feCA9IHMgKiB4ICsgdCAqIHRoaXMuX3g7XG5cdFx0XHR0aGlzLl95ID0gcyAqIHkgKyB0ICogdGhpcy5feTtcblx0XHRcdHRoaXMuX3ogPSBzICogeiArIHQgKiB0aGlzLl96O1xuXG5cdFx0XHR0aGlzLm5vcm1hbGl6ZSgpO1xuXHRcdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0XHRyZXR1cm4gdGhpcztcblxuXHRcdH1cblxuXHRcdHZhciBzaW5IYWxmVGhldGEgPSBNYXRoLnNxcnQoIHNxclNpbkhhbGZUaGV0YSApO1xuXHRcdHZhciBoYWxmVGhldGEgPSBNYXRoLmF0YW4yKCBzaW5IYWxmVGhldGEsIGNvc0hhbGZUaGV0YSApO1xuXHRcdHZhciByYXRpb0EgPSBNYXRoLnNpbiggKCAxIC0gdCApICogaGFsZlRoZXRhICkgLyBzaW5IYWxmVGhldGEsXG5cdFx0XHRyYXRpb0IgPSBNYXRoLnNpbiggdCAqIGhhbGZUaGV0YSApIC8gc2luSGFsZlRoZXRhO1xuXG5cdFx0dGhpcy5fdyA9ICggdyAqIHJhdGlvQSArIHRoaXMuX3cgKiByYXRpb0IgKTtcblx0XHR0aGlzLl94ID0gKCB4ICogcmF0aW9BICsgdGhpcy5feCAqIHJhdGlvQiApO1xuXHRcdHRoaXMuX3kgPSAoIHkgKiByYXRpb0EgKyB0aGlzLl95ICogcmF0aW9CICk7XG5cdFx0dGhpcy5feiA9ICggeiAqIHJhdGlvQSArIHRoaXMuX3ogKiByYXRpb0IgKTtcblxuXHRcdHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0ZXF1YWxzOiBmdW5jdGlvbiAoIHF1YXRlcm5pb24gKSB7XG5cblx0XHRyZXR1cm4gKCBxdWF0ZXJuaW9uLl94ID09PSB0aGlzLl94ICkgJiYgKCBxdWF0ZXJuaW9uLl95ID09PSB0aGlzLl95ICkgJiYgKCBxdWF0ZXJuaW9uLl96ID09PSB0aGlzLl96ICkgJiYgKCBxdWF0ZXJuaW9uLl93ID09PSB0aGlzLl93ICk7XG5cblx0fSxcblxuXHRmcm9tQXJyYXk6IGZ1bmN0aW9uICggYXJyYXksIG9mZnNldCApIHtcblxuXHRcdGlmICggb2Zmc2V0ID09PSB1bmRlZmluZWQgKSBvZmZzZXQgPSAwO1xuXG5cdFx0dGhpcy5feCA9IGFycmF5WyBvZmZzZXQgXTtcblx0XHR0aGlzLl95ID0gYXJyYXlbIG9mZnNldCArIDEgXTtcblx0XHR0aGlzLl96ID0gYXJyYXlbIG9mZnNldCArIDIgXTtcblx0XHR0aGlzLl93ID0gYXJyYXlbIG9mZnNldCArIDMgXTtcblxuXHRcdHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0dG9BcnJheTogZnVuY3Rpb24gKCBhcnJheSwgb2Zmc2V0ICkge1xuXG5cdFx0aWYgKCBhcnJheSA9PT0gdW5kZWZpbmVkICkgYXJyYXkgPSBbXTtcblx0XHRpZiAoIG9mZnNldCA9PT0gdW5kZWZpbmVkICkgb2Zmc2V0ID0gMDtcblxuXHRcdGFycmF5WyBvZmZzZXQgXSA9IHRoaXMuX3g7XG5cdFx0YXJyYXlbIG9mZnNldCArIDEgXSA9IHRoaXMuX3k7XG5cdFx0YXJyYXlbIG9mZnNldCArIDIgXSA9IHRoaXMuX3o7XG5cdFx0YXJyYXlbIG9mZnNldCArIDMgXSA9IHRoaXMuX3c7XG5cblx0XHRyZXR1cm4gYXJyYXk7XG5cblx0fSxcblxuXHRfb25DaGFuZ2U6IGZ1bmN0aW9uICggY2FsbGJhY2sgKSB7XG5cblx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrID0gY2FsbGJhY2s7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdF9vbkNoYW5nZUNhbGxiYWNrOiBmdW5jdGlvbiAoKSB7fVxuXG59ICk7XG5cblxuZXhwb3J0IHsgUXVhdGVybmlvbiB9OyJdfQ==
451
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb3JlL3RocmVlL1F1YXRlcm5pb24uanMiXSwibmFtZXMiOlsiUXVhdGVybmlvbiIsIngiLCJ5IiwieiIsInciLCJfeCIsIl95IiwiX3oiLCJfdyIsInVuZGVmaW5lZCIsIk9iamVjdCIsImFzc2lnbiIsInNsZXJwIiwicWEiLCJxYiIsInFtIiwidCIsImNvcHkiLCJzbGVycEZsYXQiLCJkc3QiLCJkc3RPZmZzZXQiLCJzcmMwIiwic3JjT2Zmc2V0MCIsInNyYzEiLCJzcmNPZmZzZXQxIiwieDAiLCJ5MCIsInowIiwidzAiLCJ4MSIsInkxIiwiejEiLCJ3MSIsInMiLCJjb3MiLCJkaXIiLCJzcXJTaW4iLCJOdW1iZXIiLCJFUFNJTE9OIiwic2luIiwiTWF0aCIsInNxcnQiLCJsZW4iLCJhdGFuMiIsInREaXIiLCJmIiwiZGVmaW5lUHJvcGVydGllcyIsInByb3RvdHlwZSIsImdldCIsInNldCIsInZhbHVlIiwiX29uQ2hhbmdlQ2FsbGJhY2siLCJpc1F1YXRlcm5pb24iLCJjbG9uZSIsImNvbnN0cnVjdG9yIiwicXVhdGVybmlvbiIsInNldEZyb21FdWxlciIsImV1bGVyIiwidXBkYXRlIiwiaXNFdWxlciIsIkVycm9yIiwib3JkZXIiLCJjMSIsImMyIiwiYzMiLCJzMSIsInMyIiwiczMiLCJzZXRGcm9tQXhpc0FuZ2xlIiwiYXhpcyIsImFuZ2xlIiwiaGFsZkFuZ2xlIiwic2V0RnJvbVJvdGF0aW9uTWF0cml4IiwibSIsInRlIiwiZWxlbWVudHMiLCJtMTEiLCJtMTIiLCJtMTMiLCJtMjEiLCJtMjIiLCJtMjMiLCJtMzEiLCJtMzIiLCJtMzMiLCJ0cmFjZSIsInNldEZyb21Vbml0VmVjdG9ycyIsInZGcm9tIiwidlRvIiwiRVBTIiwiciIsImRvdCIsImFicyIsIm5vcm1hbGl6ZSIsImFuZ2xlVG8iLCJxIiwiYWNvcyIsIl9NYXRoIiwiY2xhbXAiLCJyb3RhdGVUb3dhcmRzIiwic3RlcCIsIm1pbiIsImludmVyc2UiLCJjb25qdWdhdGUiLCJ2IiwibGVuZ3RoU3EiLCJsZW5ndGgiLCJsIiwibXVsdGlwbHkiLCJwIiwiY29uc29sZSIsIndhcm4iLCJtdWx0aXBseVF1YXRlcm5pb25zIiwicHJlbXVsdGlwbHkiLCJhIiwiYiIsInFheCIsInFheSIsInFheiIsInFhdyIsInFieCIsInFieSIsInFieiIsInFidyIsImNvc0hhbGZUaGV0YSIsInNxclNpbkhhbGZUaGV0YSIsInNpbkhhbGZUaGV0YSIsImhhbGZUaGV0YSIsInJhdGlvQSIsInJhdGlvQiIsImVxdWFscyIsImZyb21BcnJheSIsImFycmF5Iiwib2Zmc2V0IiwidG9BcnJheSIsIl9vbkNoYW5nZSIsImNhbGxiYWNrIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBT0E7O0FBUEE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBSUEsU0FBU0EsVUFBVCxDQUFxQkMsQ0FBckIsRUFBd0JDLENBQXhCLEVBQTJCQyxDQUEzQixFQUE4QkMsQ0FBOUIsRUFBa0M7QUFFakMsT0FBS0MsRUFBTCxHQUFVSixDQUFDLElBQUksQ0FBZjtBQUNBLE9BQUtLLEVBQUwsR0FBVUosQ0FBQyxJQUFJLENBQWY7QUFDQSxPQUFLSyxFQUFMLEdBQVVKLENBQUMsSUFBSSxDQUFmO0FBQ0EsT0FBS0ssRUFBTCxHQUFZSixDQUFDLEtBQUtLLFNBQVIsR0FBc0JMLENBQXRCLEdBQTBCLENBQXBDO0FBRUE7O0FBRURNLE1BQU0sQ0FBQ0MsTUFBUCxDQUFlWCxVQUFmLEVBQTJCO0FBRTFCWSxFQUFBQSxLQUFLLEVBQUUsZUFBV0MsRUFBWCxFQUFlQyxFQUFmLEVBQW1CQyxFQUFuQixFQUF1QkMsQ0FBdkIsRUFBMkI7QUFFakMsV0FBT0QsRUFBRSxDQUFDRSxJQUFILENBQVNKLEVBQVQsRUFBY0QsS0FBZCxDQUFxQkUsRUFBckIsRUFBeUJFLENBQXpCLENBQVA7QUFFQSxHQU55QjtBQVExQkUsRUFBQUEsU0FBUyxFQUFFLG1CQUFXQyxHQUFYLEVBQWdCQyxTQUFoQixFQUEyQkMsSUFBM0IsRUFBaUNDLFVBQWpD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QTZILElBQUFBLEtBQUssQ0FBRUMsTUFBTSxHQUFHLENBQVgsQ0FBTCxHQUFzQixLQUFLN0gsRUFBM0I7QUFFQSxXQUFPNEgsS0FBUDtBQUVBLEdBMWNtQztBQTRjcENHLEVBQUFBLFNBQVMsRUFBRSxtQkFBV0MsUUFBWCxFQUFzQjtBQUVoQyxTQUFLckYsaUJBQUwsR0FBeUJxRixRQUF6QjtBQUVBLFdBQU8sSUFBUDtBQUVBLEdBbGRtQztBQW9kcENyRixFQUFBQSxpQkFBaUIsRUFBRSw2QkFBWSxDQUFFO0FBcGRHLENBQXJDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAYXV0aG9yIG1pa2FlbCBlbXRpbmdlciAvIGh0dHA6Ly9nb21vLnNlL1xuICogQGF1dGhvciBhbHRlcmVkcSAvIGh0dHA6Ly9hbHRlcmVkcXVhbGlhLmNvbS9cbiAqIEBhdXRob3IgV2VzdExhbmdsZXkgLyBodHRwOi8vZ2l0aHViLmNvbS9XZXN0TGFuZ2xleVxuICogQGF1dGhvciBiaG91c3RvbiAvIGh0dHA6Ly9jbGFyYS5pb1xuICovXG5cbmltcG9ydCB7IF9NYXRoIH0gZnJvbSAnLi9NYXRoLmpzJztcblxuZnVuY3Rpb24gUXVhdGVybmlvbiggeCwgeSwgeiwgdyApIHtcblxuXHR0aGlzLl94ID0geCB8fCAwO1xuXHR0aGlzLl95ID0geSB8fCAwO1xuXHR0aGlzLl96ID0geiB8fCAwO1xuXHR0aGlzLl93ID0gKCB3ICE9PSB1bmRlZmluZWQgKSA/IHcgOiAxO1xuXG59XG5cbk9iamVjdC5hc3NpZ24oIFF1YXRlcm5pb24sIHtcblxuXHRzbGVycDogZnVuY3Rpb24gKCBxYSwgcWIsIHFtLCB0ICkge1xuXG5cdFx0cmV0dXJuIHFtLmNvcHkoIHFhICkuc2xlcnAoIHFiLCB0ICk7XG5cblx0fSxcblxuXHRzbGVycEZsYXQ6IGZ1bmN0aW9uICggZHN0LCBkc3RPZmZzZXQsIHNyYzAsIHNyY09mZnNldDAsIHNyYzEsIHNyY09mZnNldDEsIHQgKSB7XG5cblx0XHQvLyBmdXp6LWZyZWUsIGFycmF5LWJhc2VkIFF1YXRlcm5pb24gU0xFUlAgb3BlcmF0aW9uXG5cblx0XHR2YXIgeDAgPSBzcmMwWyBzcmNPZmZzZXQwICsgMCBdLFxuXHRcdFx0eTAgPSBzcmMwWyBzcmNPZmZzZXQwICsgMSBdLFxuXHRcdFx0ejAgPSBzcmMwWyBzcmNPZmZzZXQwICsgMiBdLFxuXHRcdFx0dzAgPSBzcmMwWyBzcmNPZmZzZXQwICsgMyBdLFxuXG5cdFx0XHR4MSA9IHNyYzFbIHNyY09mZnNldDEgKyAwIF0sXG5cdFx0XHR5MSA9IHNyYzFbIHNyY09mZnNldDEgKyAxIF0sXG5cdFx0XHR6MSA9IHNyYzFbIHNyY09mZnNldDEgKyAyIF0sXG5cdFx0XHR3MSA9IHNyYzFbIHNyY09mZnNldDEgKyAzIF07XG5cblx0XHRpZiAoIHcwICE9PSB3MSB8fCB4MCAhPT0geDEgfHwgeTAgIT09IHkxIHx8IHowICE9PSB6MSApIHtcblxuXHRcdFx0dmFyIHMgPSAxIC0gdCxcblxuXHRcdFx0XHRjb3MgPSB4MCAqIHgxICsgeTAgKiB5MSArIHowICogejEgKyB3MCAqIHcxLFxuXG5cdFx0XHRcdGRpciA9ICggY29zID49IDAgPyAxIDogLSAxICksXG5cdFx0XHRcdHNxclNpbiA9IDEgLSBjb3MgKiBjb3M7XG5cblx0XHRcdC8vIFNraXAgdGhlIFNsZXJwIGZvciB0aW55IHN0ZXBzIHRvIGF2b2lkIG51bWVyaWMgcHJvYmxlbXM6XG5cdFx0XHRpZiAoIHNxclNpbiA+IE51bWJlci5FUFNJTE9OICkge1xuXG5cdFx0XHRcdHZhciBzaW4gPSBNYXRoLnNxcnQoIHNxclNpbiApLFxuXHRcdFx0XHRcdGxlbiA9IE1hdGguYXRhbjIoIHNpbiwgY29zICogZGlyICk7XG5cblx0XHRcdFx0cyA9IE1hdGguc2luKCBzICogbGVuICkgLyBzaW47XG5cdFx0XHRcdHQgPSBNYXRoLnNpbiggdCAqIGxlbiApIC8gc2luO1xuXG5cdFx0XHR9XG5cblx0XHRcdHZhciB0RGlyID0gdCAqIGRpcjtcblxuXHRcdFx0eDAgPSB4MCAqIHMgKyB4MSAqIHREaXI7XG5cdFx0XHR5MCA9IHkwICogcyArIHkxICogdERpcjtcblx0XHRcdHowID0gejAgKiBzICsgejEgKiB0RGlyO1xuXHRcdFx0dzAgPSB3MCAqIHMgKyB3MSAqIHREaXI7XG5cblx0XHRcdC8vIE5vcm1hbGl6ZSBpbiBjYXNlIHdlIGp1c3QgZGlkIGEgbGVycDpcblx0XHRcdGlmICggcyA9PT0gMSAtIHQgKSB7XG5cblx0XHRcdFx0dmFyIGYgPSAxIC8gTWF0aC5zcXJ0KCB4MCAqIHgwICsgeTAgKiB5MCArIHowICogejAgKyB3MCAqIHcwICk7XG5cblx0XHRcdFx0eDAgKj0gZjtcblx0XHRcdFx0eTAgKj0gZjtcblx0XHRcdFx0ejAgKj0gZjtcblx0XHRcdFx0dzAgKj0gZjtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0ZHN0WyBkc3RPZmZzZXQgXSA9IHgwO1xuXHRcdGRzdFsgZHN0T2Zmc2V0ICsgMSBdID0geTA7XG5cdFx0ZHN0WyBkc3RPZmZzZXQgKyAyIF0gPSB6MDtcblx0XHRkc3RbIGRzdE9mZnNldCArIDMgXSA9IHcwO1xuXG5cdH1cblxufSApO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyggUXVhdGVybmlvbi5wcm90b3R5cGUsIHtcblxuXHR4OiB7XG5cblx0XHRnZXQ6IGZ1bmN0aW9uICgpIHtcblxuXHRcdFx0cmV0dXJuIHRoaXMuX3g7XG5cblx0XHR9LFxuXG5cdFx0c2V0OiBmdW5jdGlvbiAoIHZhbHVlICkge1xuXG5cdFx0XHR0aGlzLl94ID0gdmFsdWU7XG5cdFx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHR9XG5cblx0fSxcblxuXHR5OiB7XG5cblx0XHRnZXQ6IGZ1bmN0aW9uICgpIHtcblxuXHRcdFx0cmV0dXJuIHRoaXMuX3k7XG5cblx0XHR9LFxuXG5cdFx0c2V0OiBmdW5jdGlvbiAoIHZhbHVlICkge1xuXG5cdFx0XHR0aGlzLl95ID0gdmFsdWU7XG5cdFx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHR9XG5cblx0fSxcblxuXHR6OiB7XG5cblx0XHRnZXQ6IGZ1bmN0aW9uICgpIHtcblxuXHRcdFx0cmV0dXJuIHRoaXMuX3o7XG5cblx0XHR9LFxuXG5cdFx0c2V0OiBmdW5jdGlvbiAoIHZhbHVlICkge1xuXG5cdFx0XHR0aGlzLl96ID0gdmFsdWU7XG5cdFx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHR9XG5cblx0fSxcblxuXHR3OiB7XG5cblx0XHRnZXQ6IGZ1bmN0aW9uICgpIHtcblxuXHRcdFx0cmV0dXJuIHRoaXMuX3c7XG5cblx0XHR9LFxuXG5cdFx0c2V0OiBmdW5jdGlvbiAoIHZhbHVlICkge1xuXG5cdFx0XHR0aGlzLl93ID0gdmFsdWU7XG5cdFx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHR9XG5cblx0fVxuXG59ICk7XG5cbk9iamVjdC5hc3NpZ24oIFF1YXRlcm5pb24ucHJvdG90eXBlLCB7XG5cblx0aXNRdWF0ZXJuaW9uOiB0cnVlLFxuXG5cdHNldDogZnVuY3Rpb24gKCB4LCB5LCB6LCB3ICkge1xuXG5cdFx0dGhpcy5feCA9IHg7XG5cdFx0dGhpcy5feSA9IHk7XG5cdFx0dGhpcy5feiA9IHo7XG5cdFx0dGhpcy5fdyA9IHc7XG5cblx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGNsb25lOiBmdW5jdGlvbiAoKSB7XG5cblx0XHRyZXR1cm4gbmV3IHRoaXMuY29uc3RydWN0b3IoIHRoaXMuX3gsIHRoaXMuX3ksIHRoaXMuX3osIHRoaXMuX3cgKTtcblxuXHR9LFxuXG5cdGNvcHk6IGZ1bmN0aW9uICggcXVhdGVybmlvbiApIHtcblxuXHRcdHRoaXMuX3ggPSBxdWF0ZXJuaW9uLng7XG5cdFx0dGhpcy5feSA9IHF1YXRlcm5pb24ueTtcblx0XHR0aGlzLl96ID0gcXVhdGVybmlvbi56O1xuXHRcdHRoaXMuX3cgPSBxdWF0ZXJuaW9uLnc7XG5cblx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdHNldEZyb21FdWxlcjogZnVuY3Rpb24gKCBldWxlciwgdXBkYXRlICkge1xuXG5cdFx0aWYgKCAhICggZXVsZXIgJiYgZXVsZXIuaXNFdWxlciApICkge1xuXG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoICdUSFJFRS5RdWF0ZXJuaW9uOiAuc2V0RnJvbUV1bGVyKCkgbm93IGV4cGVjdHMgYW4gRXVsZXIgcm90YXRpb24gcmF0aGVyIHRoYW4gYSBWZWN0b3IzIGFuZCBvcmRlci4nICk7XG5cblx0XHR9XG5cblx0XHR2YXIgeCA9IGV1bGVyLl94LCB5ID0gZXVsZXIuX3ksIHogPSBldWxlci5feiwgb3JkZXIgPSBldWxlci5vcmRlcjtcblxuXHRcdC8vIGh0dHA6Ly93d3cubWF0aHdvcmtzLmNvbS9tYXRsYWJjZW50cmFsL2ZpbGVleGNoYW5nZS9cblx0XHQvLyBcdDIwNjk2LWZ1bmN0aW9uLXRvLWNvbnZlcnQtYmV0d2Vlbi1kY20tZXVsZXItYW5nbGVzLXF1YXRlcm5pb25zLWFuZC1ldWxlci12ZWN0b3JzL1xuXHRcdC8vXHRjb250ZW50L1NwaW5DYWxjLm1cblxuXHRcdHZhciBjb3MgPSBNYXRoLmNvcztcblx0XHR2YXIgc2luID0gTWF0aC5zaW47XG5cblx0XHR2YXIgYzEgPSBjb3MoIHggLyAyICk7XG5cdFx0dmFyIGMyID0gY29zKCB5IC8gMiApO1xuXHRcdHZhciBjMyA9IGNvcyggeiAvIDIgKTtcblxuXHRcdHZhciBzMSA9IHNpbiggeCAvIDIgKTtcblx0XHR2YXIgczIgPSBzaW4oIHkgLyAyICk7XG5cdFx0dmFyIHMzID0gc2luKCB6IC8gMiApO1xuXG5cdFx0aWYgKCBvcmRlciA9PT0gJ1hZWicgKSB7XG5cblx0XHRcdHRoaXMuX3ggPSBzMSAqIGMyICogYzMgKyBjMSAqIHMyICogczM7XG5cdFx0XHR0aGlzLl95ID0gYzEgKiBzMiAqIGMzIC0gczEgKiBjMiAqIHMzO1xuXHRcdFx0dGhpcy5feiA9IGMxICogYzIgKiBzMyArIHMxICogczIgKiBjMztcblx0XHRcdHRoaXMuX3cgPSBjMSAqIGMyICogYzMgLSBzMSAqIHMyICogczM7XG5cblx0XHR9IGVsc2UgaWYgKCBvcmRlciA9PT0gJ1lYWicgKSB7XG5cblx0XHRcdHRoaXMuX3ggPSBzMSAqIGMyICogYzMgKyBjMSAqIHMyICogczM7XG5cdFx0XHR0aGlzLl95ID0gYzEgKiBzMiAqIGMzIC0gczEgKiBjMiAqIHMzO1xuXHRcdFx0dGhpcy5feiA9IGMxICogYzIgKiBzMyAtIHMxICogczIgKiBjMztcblx0XHRcdHRoaXMuX3cgPSBjMSAqIGMyICogYzMgKyBzMSAqIHMyICogczM7XG5cblx0XHR9IGVsc2UgaWYgKCBvcmRlciA9PT0gJ1pYWScgKSB7XG5cblx0XHRcdHRoaXMuX3ggPSBzMSAqIGMyICogYzMgLSBjMSAqIHMyICogczM7XG5cdFx0XHR0aGlzLl95ID0gYzEgKiBzMiAqIGMzICsgczEgKiBjMiAqIHMzO1xuXHRcdFx0dGhpcy5feiA9IGMxICogYzIgKiBzMyArIHMxICogczIgKiBjMztcblx0XHRcdHRoaXMuX3cgPSBjMSAqIGMyICogYzMgLSBzMSAqIHMyICogczM7XG5cblx0XHR9IGVsc2UgaWYgKCBvcmRlciA9PT0gJ1pZWCcgKSB7XG5cblx0XHRcdHRoaXMuX3ggPSBzMSAqIGMyICogYzMgLSBjMSAqIHMyICogczM7XG5cdFx0XHR0aGlzLl95ID0gYzEgKiBzMiAqIGMzICsgczEgKiBjMiAqIHMzO1xuXHRcdFx0dGhpcy5feiA9IGMxICogYzIgKiBzMyAtIHMxICogczIgKiBjMztcblx0XHRcdHRoaXMuX3cgPSBjMSAqIGMyICogYzMgKyBzMSAqIHMyICogczM7XG5cblx0XHR9IGVsc2UgaWYgKCBvcmRlciA9PT0gJ1laWCcgKSB7XG5cblx0XHRcdHRoaXMuX3ggPSBzMSAqIGMyICogYzMgKyBjMSAqIHMyICogczM7XG5cdFx0XHR0aGlzLl95ID0gYzEgKiBzMiAqIGMzICsgczEgKiBjMiAqIHMzO1xuXHRcdFx0dGhpcy5feiA9IGMxICogYzIgKiBzMyAtIHMxICogczIgKiBjMztcblx0XHRcdHRoaXMuX3cgPSBjMSAqIGMyICogYzMgLSBzMSAqIHMyICogczM7XG5cblx0XHR9IGVsc2UgaWYgKCBvcmRlciA9PT0gJ1haWScgKSB7XG5cblx0XHRcdHRoaXMuX3ggPSBzMSAqIGMyICogYzMgLSBjMSAqIHMyICogczM7XG5cdFx0XHR0aGlzLl95ID0gYzEgKiBzMiAqIGMzIC0gczEgKiBjMiAqIHMzO1xuXHRcdFx0dGhpcy5feiA9IGMxICogYzIgKiBzMyArIHMxICogczIgKiBjMztcblx0XHRcdHRoaXMuX3cgPSBjMSAqIGMyICogYzMgKyBzMSAqIHMyICogczM7XG5cblx0XHR9XG5cblx0XHRpZiAoIHVwZGF0ZSAhPT0gZmFsc2UgKSB0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdHNldEZyb21BeGlzQW5nbGU6IGZ1bmN0aW9uICggYXhpcywgYW5nbGUgKSB7XG5cblx0XHQvLyBodHRwOi8vd3d3LmV1Y2xpZGVhbnNwYWNlLmNvbS9tYXRocy9nZW9tZXRyeS9yb3RhdGlvbnMvY29udmVyc2lvbnMvYW5nbGVUb1F1YXRlcm5pb24vaW5kZXguaHRtXG5cblx0XHQvLyBhc3N1bWVzIGF4aXMgaXMgbm9ybWFsaXplZFxuXG5cdFx0dmFyIGhhbGZBbmdsZSA9IGFuZ2xlIC8gMiwgcyA9IE1hdGguc2luKCBoYWxmQW5nbGUgKTtcblxuXHRcdHRoaXMuX3ggPSBheGlzLnggKiBzO1xuXHRcdHRoaXMuX3kgPSBheGlzLnkgKiBzO1xuXHRcdHRoaXMuX3ogPSBheGlzLnogKiBzO1xuXHRcdHRoaXMuX3cgPSBNYXRoLmNvcyggaGFsZkFuZ2xlICk7XG5cblx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdHNldEZyb21Sb3RhdGlvbk1hdHJpeDogZnVuY3Rpb24gKCBtICkge1xuXG5cdFx0Ly8gaHR0cDovL3d3dy5ldWNsaWRlYW5zcGFjZS5jb20vbWF0aHMvZ2VvbWV0cnkvcm90YXRpb25zL2NvbnZlcnNpb25zL21hdHJpeFRvUXVhdGVybmlvbi9pbmRleC5odG1cblxuXHRcdC8vIGFzc3VtZXMgdGhlIHVwcGVyIDN4MyBvZiBtIGlzIGEgcHVyZSByb3RhdGlvbiBtYXRyaXggKGkuZSwgdW5zY2FsZWQpXG5cblx0XHR2YXIgdGUgPSBtLmVsZW1lbnRzLFxuXG5cdFx0XHRtMTEgPSB0ZVsgMCBdLCBtMTIgPSB0ZVsgNCBdLCBtMTMgPSB0ZVsgOCBdLFxuXHRcdFx0bTIxID0gdGVbIDEgXSwgbTIyID0gdGVbIDUgXSwgbTIzID0gdGVbIDkgXSxcblx0XHRcdG0zMSA9IHRlWyAyIF0sIG0zMiA9IHRlWyA2IF0sIG0zMyA9IHRlWyAxMCBdLFxuXG5cdFx0XHR0cmFjZSA9IG0xMSArIG0yMiArIG0zMyxcblx0XHRcdHM7XG5cblx0XHRpZiAoIHRyYWNlID4gMCApIHtcblxuXHRcdFx0cyA9IDAuNSAvIE1hdGguc3FydCggdHJhY2UgKyAxLjAgKTtcblxuXHRcdFx0dGhpcy5fdyA9IDAuMjUgLyBzO1xuXHRcdFx0dGhpcy5feCA9ICggbTMyIC0gbTIzICkgKiBzO1xuXHRcdFx0dGhpcy5feSA9ICggbTEzIC0gbTMxICkgKiBzO1xuXHRcdFx0dGhpcy5feiA9ICggbTIxIC0gbTEyICkgKiBzO1xuXG5cdFx0fSBlbHNlIGlmICggbTExID4gbTIyICYmIG0xMSA+IG0zMyApIHtcblxuXHRcdFx0cyA9IDIuMCAqIE1hdGguc3FydCggMS4wICsgbTExIC0gbTIyIC0gbTMzICk7XG5cblx0XHRcdHRoaXMuX3cgPSAoIG0zMiAtIG0yMyApIC8gcztcblx0XHRcdHRoaXMuX3ggPSAwLjI1ICogcztcblx0XHRcdHRoaXMuX3kgPSAoIG0xMiArIG0yMSApIC8gcztcblx0XHRcdHRoaXMuX3ogPSAoIG0xMyArIG0zMSApIC8gcztcblxuXHRcdH0gZWxzZSBpZiAoIG0yMiA+IG0zMyApIHtcblxuXHRcdFx0cyA9IDIuMCAqIE1hdGguc3FydCggMS4wICsgbTIyIC0gbTExIC0gbTMzICk7XG5cblx0XHRcdHRoaXMuX3cgPSAoIG0xMyAtIG0zMSApIC8gcztcblx0XHRcdHRoaXMuX3ggPSAoIG0xMiArIG0yMSApIC8gcztcblx0XHRcdHRoaXMuX3kgPSAwLjI1ICogcztcblx0XHRcdHRoaXMuX3ogPSAoIG0yMyArIG0zMiApIC8gcztcblxuXHRcdH0gZWxzZSB7XG5cblx0XHRcdHMgPSAyLjAgKiBNYXRoLnNxcnQoIDEuMCArIG0zMyAtIG0xMSAtIG0yMiApO1xuXG5cdFx0XHR0aGlzLl93ID0gKCBtMjEgLSBtMTIgKSAvIHM7XG5cdFx0XHR0aGlzLl94ID0gKCBtMTMgKyBtMzEgKSAvIHM7XG5cdFx0XHR0aGlzLl95ID0gKCBtMjMgKyBtMzIgKSAvIHM7XG5cdFx0XHR0aGlzLl96ID0gMC4yNSAqIHM7XG5cblx0XHR9XG5cblx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdHNldEZyb21Vbml0VmVjdG9yczogZnVuY3Rpb24gKCB2RnJvbSwgdlRvICkge1xuXG5cdFx0Ly8gYXNzdW1lcyBkaXJlY3Rpb24gdmVjdG9ycyB2RnJvbSBhbmQgdlRvIGFyZSBub3JtYWxpemVkXG5cblx0XHR2YXIgRVBTID0gMC4wMDAwMDE7XG5cblx0XHR2YXIgciA9IHZGcm9tLmRvdCggdlRvICkgKyAxO1xuXG5cdFx0aWYgKCByIDwgRVBTICkge1xuXG5cdFx0XHRyID0gMDtcblxuXHRcdFx0aWYgKCBNYXRoLmFicyggdkZyb20ueCApID4gTWF0aC5hYnMoIHZGcm9tLnogKSApIHtcblxuXHRcdFx0XHR0aGlzLl94ID0gLSB2RnJvbS55O1xuXHRcdFx0XHR0aGlzLl95ID0gdkZyb20ueDtcblx0XHRcdFx0dGhpcy5feiA9IDA7XG5cdFx0XHRcdHRoaXMuX3cgPSByO1xuXG5cdFx0XHR9IGVsc2Uge1xuXG5cdFx0XHRcdHRoaXMuX3ggPSAwO1xuXHRcdFx0XHR0aGlzLl95ID0gLSB2RnJvbS56O1xuXHRcdFx0XHR0aGlzLl96ID0gdkZyb20ueTtcblx0XHRcdFx0dGhpcy5fdyA9IHI7XG5cblx0XHRcdH1cblxuXHRcdH0gZWxzZSB7XG5cblx0XHRcdC8vIGNyb3NzVmVjdG9ycyggdkZyb20sIHZUbyApOyAvLyBpbmxpbmVkIHRvIGF2b2lkIGN5Y2xpYyBkZXBlbmRlbmN5IG9uIFZlY3RvcjNcblxuXHRcdFx0dGhpcy5feCA9IHZGcm9tLnkgKiB2VG8ueiAtIHZGcm9tLnogKiB2VG8ueTtcblx0XHRcdHRoaXMuX3kgPSB2RnJvbS56ICogdlRvLnggLSB2RnJvbS54ICogdlRvLno7XG5cdFx0XHR0aGlzLl96ID0gdkZyb20ueCAqIHZUby55IC0gdkZyb20ueSAqIHZUby54O1xuXHRcdFx0dGhpcy5fdyA9IHI7XG5cblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcy5ub3JtYWxpemUoKTtcblxuXHR9LFxuXG5cdGFuZ2xlVG86IGZ1bmN0aW9uICggcSApIHtcblxuXHRcdHJldHVybiAyICogTWF0aC5hY29zKCBNYXRoLmFicyggX01hdGguY2xhbXAoIHRoaXMuZG90KCBxICksIC0gMSwgMSApICkgKTtcblxuXHR9LFxuXG5cdHJvdGF0ZVRvd2FyZHM6IGZ1bmN0aW9uICggcSwgc3RlcCApIHtcblxuXHRcdHZhciBhbmdsZSA9IHRoaXMuYW5nbGVUbyggcSApO1xuXG5cdFx0aWYgKCBhbmdsZSA9PT0gMCApIHJldHVybiB0aGlzO1xuXG5cdFx0dmFyIHQgPSBNYXRoLm1pbiggMSwgc3RlcCAvIGFuZ2xlICk7XG5cblx0XHR0aGlzLnNsZXJwKCBxLCB0ICk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGludmVyc2U6IGZ1bmN0aW9uICgpIHtcblxuXHRcdC8vIHF1YXRlcm5pb24gaXMgYXNzdW1lZCB0byBoYXZlIHVuaXQgbGVuZ3RoXG5cblx0XHRyZXR1cm4gdGhpcy5jb25qdWdhdGUoKTtcblxuXHR9LFxuXG5cdGNvbmp1Z2F0ZTogZnVuY3Rpb24gKCkge1xuXG5cdFx0dGhpcy5feCAqPSAtIDE7XG5cdFx0dGhpcy5feSAqPSAtIDE7XG5cdFx0dGhpcy5feiAqPSAtIDE7XG5cblx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHRyZXR1cm4gdGhpcztcblxuXHR9LFxuXG5cdGRvdDogZnVuY3Rpb24gKCB2ICkge1xuXG5cdFx0cmV0dXJuIHRoaXMuX3ggKiB2Ll94ICsgdGhpcy5feSAqIHYuX3kgKyB0aGlzLl96ICogdi5feiArIHRoaXMuX3cgKiB2Ll93O1xuXG5cdH0sXG5cblx0bGVuZ3RoU3E6IGZ1bmN0aW9uICgpIHtcblxuXHRcdHJldHVybiB0aGlzLl94ICogdGhpcy5feCArIHRoaXMuX3kgKiB0aGlzLl95ICsgdGhpcy5feiAqIHRoaXMuX3ogKyB0aGlzLl93ICogdGhpcy5fdztcblxuXHR9LFxuXG5cdGxlbmd0aDogZnVuY3Rpb24gKCkge1xuXG5cdFx0cmV0dXJuIE1hdGguc3FydCggdGhpcy5feCAqIHRoaXMuX3ggKyB0aGlzLl95ICogdGhpcy5feSArIHRoaXMuX3ogKiB0aGlzLl96ICsgdGhpcy5fdyAqIHRoaXMuX3cgKTtcblxuXHR9LFxuXG5cdG5vcm1hbGl6ZTogZnVuY3Rpb24gKCkge1xuXG5cdFx0dmFyIGwgPSB0aGlzLmxlbmd0aCgpO1xuXG5cdFx0aWYgKCBsID09PSAwICkge1xuXG5cdFx0XHR0aGlzLl94ID0gMDtcblx0XHRcdHRoaXMuX3kgPSAwO1xuXHRcdFx0dGhpcy5feiA9IDA7XG5cdFx0XHR0aGlzLl93ID0gMTtcblxuXHRcdH0gZWxzZSB7XG5cblx0XHRcdGwgPSAxIC8gbDtcblxuXHRcdFx0dGhpcy5feCA9IHRoaXMuX3ggKiBsO1xuXHRcdFx0dGhpcy5feSA9IHRoaXMuX3kgKiBsO1xuXHRcdFx0dGhpcy5feiA9IHRoaXMuX3ogKiBsO1xuXHRcdFx0dGhpcy5fdyA9IHRoaXMuX3cgKiBsO1xuXG5cdFx0fVxuXG5cdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRtdWx0aXBseTogZnVuY3Rpb24gKCBxLCBwICkge1xuXG5cdFx0aWYgKCBwICE9PSB1bmRlZmluZWQgKSB7XG5cblx0XHRcdGNvbnNvbGUud2FybiggJ1RIUkVFLlF1YXRlcm5pb246IC5tdWx0aXBseSgpIG5vdyBvbmx5IGFjY2VwdHMgb25lIGFyZ3VtZW50LiBVc2UgLm11bHRpcGx5UXVhdGVybmlvbnMoIGEsIGIgKSBpbnN0ZWFkLicgKTtcblx0XHRcdHJldHVybiB0aGlzLm11bHRpcGx5UXVhdGVybmlvbnMoIHEsIHAgKTtcblxuXHRcdH1cblxuXHRcdHJldHVybiB0aGlzLm11bHRpcGx5UXVhdGVybmlvbnMoIHRoaXMsIHEgKTtcblxuXHR9LFxuXG5cdHByZW11bHRpcGx5OiBmdW5jdGlvbiAoIHEgKSB7XG5cblx0XHRyZXR1cm4gdGhpcy5tdWx0aXBseVF1YXRlcm5pb25zKCBxLCB0aGlzICk7XG5cblx0fSxcblxuXHRtdWx0aXBseVF1YXRlcm5pb25zOiBmdW5jdGlvbiAoIGEsIGIgKSB7XG5cblx0XHQvLyBmcm9tIGh0dHA6Ly93d3cuZXVjbGlkZWFuc3BhY2UuY29tL21hdGhzL2FsZ2VicmEvcmVhbE5vcm1lZEFsZ2VicmEvcXVhdGVybmlvbnMvY29kZS9pbmRleC5odG1cblxuXHRcdHZhciBxYXggPSBhLl94LCBxYXkgPSBhLl95LCBxYXogPSBhLl96LCBxYXcgPSBhLl93O1xuXHRcdHZhciBxYnggPSBiLl94LCBxYnkgPSBiLl95LCBxYnogPSBiLl96LCBxYncgPSBiLl93O1xuXG5cdFx0dGhpcy5feCA9IHFheCAqIHFidyArIHFhdyAqIHFieCArIHFheSAqIHFieiAtIHFheiAqIHFieTtcblx0XHR0aGlzLl95ID0gcWF5ICogcWJ3ICsgcWF3ICogcWJ5ICsgcWF6ICogcWJ4IC0gcWF4ICogcWJ6O1xuXHRcdHRoaXMuX3ogPSBxYXogKiBxYncgKyBxYXcgKiBxYnogKyBxYXggKiBxYnkgLSBxYXkgKiBxYng7XG5cdFx0dGhpcy5fdyA9IHFhdyAqIHFidyAtIHFheCAqIHFieCAtIHFheSAqIHFieSAtIHFheiAqIHFiejtcblxuXHRcdHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKTtcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0c2xlcnA6IGZ1bmN0aW9uICggcWIsIHQgKSB7XG5cblx0XHRpZiAoIHQgPT09IDAgKSByZXR1cm4gdGhpcztcblx0XHRpZiAoIHQgPT09IDEgKSByZXR1cm4gdGhpcy5jb3B5KCBxYiApO1xuXG5cdFx0dmFyIHggPSB0aGlzLl94LCB5ID0gdGhpcy5feSwgeiA9IHRoaXMuX3osIHcgPSB0aGlzLl93O1xuXG5cdFx0Ly8gaHR0cDovL3d3dy5ldWNsaWRlYW5zcGFjZS5jb20vbWF0aHMvYWxnZWJyYS9yZWFsTm9ybWVkQWxnZWJyYS9xdWF0ZXJuaW9ucy9zbGVycC9cblxuXHRcdHZhciBjb3NIYWxmVGhldGEgPSB3ICogcWIuX3cgKyB4ICogcWIuX3ggKyB5ICogcWIuX3kgKyB6ICogcWIuX3o7XG5cblx0XHRpZiAoIGNvc0hhbGZUaGV0YSA8IDAgKSB7XG5cblx0XHRcdHRoaXMuX3cgPSAtIHFiLl93O1xuXHRcdFx0dGhpcy5feCA9IC0gcWIuX3g7XG5cdFx0XHR0aGlzLl95ID0gLSBxYi5feTtcblx0XHRcdHRoaXMuX3ogPSAtIHFiLl96O1xuXG5cdFx0XHRjb3NIYWxmVGhldGEgPSAtIGNvc0hhbGZUaGV0YTtcblxuXHRcdH0gZWxzZSB7XG5cblx0XHRcdHRoaXMuY29weSggcWIgKTtcblxuXHRcdH1cblxuXHRcdGlmICggY29zSGFsZlRoZXRhID49IDEuMCApIHtcblxuXHRcdFx0dGhpcy5fdyA9IHc7XG5cdFx0XHR0aGlzLl94ID0geDtcblx0XHRcdHRoaXMuX3kgPSB5O1xuXHRcdFx0dGhpcy5feiA9IHo7XG5cblx0XHRcdHJldHVybiB0aGlzO1xuXG5cdFx0fVxuXG5cdFx0dmFyIHNxclNpbkhhbGZUaGV0YSA9IDEuMCAtIGNvc0hhbGZUaGV0YSAqIGNvc0hhbGZUaGV0YTtcblxuXHRcdGlmICggc3FyU2luSGFsZlRoZXRhIDw9IE51bWJlci5FUFNJTE9OICkge1xuXG5cdFx0XHR2YXIgcyA9IDEgLSB0O1xuXHRcdFx0dGhpcy5fdyA9IHMgKiB3ICsgdCAqIHRoaXMuX3c7XG5cdFx0XHR0aGlzLl94ID0gcyAqIHggKyB0ICogdGhpcy5feDtcblx0XHRcdHRoaXMuX3kgPSBzICogeSArIHQgKiB0aGlzLl95O1xuXHRcdFx0dGhpcy5feiA9IHMgKiB6ICsgdCAqIHRoaXMuX3o7XG5cblx0XHRcdHRoaXMubm9ybWFsaXplKCk7XG5cdFx0XHR0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCk7XG5cblx0XHRcdHJldHVybiB0aGlzO1xuXG5cdFx0fVxuXG5cdFx0dmFyIHNpbkhhbGZUaGV0YSA9IE1hdGguc3FydCggc3FyU2luSGFsZlRoZXRhICk7XG5cdFx0dmFyIGhhbGZUaGV0YSA9IE1hdGguYXRhbjIoIHNpbkhhbGZUaGV0YSwgY29zSGFsZlRoZXRhICk7XG5cdFx0dmFyIHJhdGlvQSA9IE1hdGguc2luKCAoIDEgLSB0ICkgKiBoYWxmVGhldGEgKSAvIHNpbkhhbGZUaGV0YSxcblx0XHRcdHJhdGlvQiA9IE1hdGguc2luKCB0ICogaGFsZlRoZXRhICkgLyBzaW5IYWxmVGhldGE7XG5cblx0XHR0aGlzLl93ID0gKCB3ICogcmF0aW9BICsgdGhpcy5fdyAqIHJhdGlvQiApO1xuXHRcdHRoaXMuX3ggPSAoIHggKiByYXRpb0EgKyB0aGlzLl94ICogcmF0aW9CICk7XG5cdFx0dGhpcy5feSA9ICggeSAqIHJhdGlvQSArIHRoaXMuX3kgKiByYXRpb0IgKTtcblx0XHR0aGlzLl96ID0gKCB6ICogcmF0aW9BICsgdGhpcy5feiAqIHJhdGlvQiApO1xuXG5cdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHRlcXVhbHM6IGZ1bmN0aW9uICggcXVhdGVybmlvbiApIHtcblxuXHRcdHJldHVybiAoIHF1YXRlcm5pb24uX3ggPT09IHRoaXMuX3ggKSAmJiAoIHF1YXRlcm5pb24uX3kgPT09IHRoaXMuX3kgKSAmJiAoIHF1YXRlcm5pb24uX3ogPT09IHRoaXMuX3ogKSAmJiAoIHF1YXRlcm5pb24uX3cgPT09IHRoaXMuX3cgKTtcblxuXHR9LFxuXG5cdGZyb21BcnJheTogZnVuY3Rpb24gKCBhcnJheSwgb2Zmc2V0ICkge1xuXG5cdFx0aWYgKCBvZmZzZXQgPT09IHVuZGVmaW5lZCApIG9mZnNldCA9IDA7XG5cblx0XHR0aGlzLl94ID0gYXJyYXlbIG9mZnNldCBdO1xuXHRcdHRoaXMuX3kgPSBhcnJheVsgb2Zmc2V0ICsgMSBdO1xuXHRcdHRoaXMuX3ogPSBhcnJheVsgb2Zmc2V0ICsgMiBdO1xuXHRcdHRoaXMuX3cgPSBhcnJheVsgb2Zmc2V0ICsgMyBdO1xuXG5cdFx0dGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpO1xuXG5cdFx0cmV0dXJuIHRoaXM7XG5cblx0fSxcblxuXHR0b0FycmF5OiBmdW5jdGlvbiAoIGFycmF5LCBvZmZzZXQgKSB7XG5cblx0XHRpZiAoIGFycmF5ID09PSB1bmRlZmluZWQgKSBhcnJheSA9IFtdO1xuXHRcdGlmICggb2Zmc2V0ID09PSB1bmRlZmluZWQgKSBvZmZzZXQgPSAwO1xuXG5cdFx0YXJyYXlbIG9mZnNldCBdID0gdGhpcy5feDtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMSBdID0gdGhpcy5feTtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMiBdID0gdGhpcy5fejtcblx0XHRhcnJheVsgb2Zmc2V0ICsgMyBdID0gdGhpcy5fdztcblxuXHRcdHJldHVybiBhcnJheTtcblxuXHR9LFxuXG5cdF9vbkNoYW5nZTogZnVuY3Rpb24gKCBjYWxsYmFjayApIHtcblxuXHRcdHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2sgPSBjYWxsYmFjaztcblxuXHRcdHJldHVybiB0aGlzO1xuXG5cdH0sXG5cblx0X29uQ2hhbmdlQ2FsbGJhY2s6IGZ1bmN0aW9uICgpIHt9XG5cbn0gKTtcblxuXG5leHBvcnQgeyBRdWF0ZXJuaW9uIH07Il19