@snap/camera-kit 0.22.0 → 1.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 (575) hide show
  1. package/LICENSE.md +1122 -537
  2. package/README.md +1 -1
  3. package/dist/CameraKit.d.ts +3 -3
  4. package/dist/CameraKit.d.ts.map +1 -1
  5. package/dist/CameraKit.js +1 -2
  6. package/dist/CameraKit.js.map +1 -1
  7. package/dist/RootServices.d.ts +78 -0
  8. package/dist/RootServices.d.ts.map +1 -0
  9. package/dist/RootServices.js.map +1 -0
  10. package/dist/bootstrapCameraKit.d.ts +3 -4
  11. package/dist/bootstrapCameraKit.d.ts.map +1 -1
  12. package/dist/bootstrapCameraKit.js +8 -8
  13. package/dist/bootstrapCameraKit.js.map +1 -1
  14. package/dist/clients/createTsProtoClient.d.ts +2 -2
  15. package/dist/clients/createTsProtoClient.d.ts.map +1 -1
  16. package/dist/clients/createTsProtoClient.js.map +1 -1
  17. package/dist/clients/grpcHandler.d.ts.map +1 -1
  18. package/dist/clients/grpcHandler.js +1 -1
  19. package/dist/clients/grpcHandler.js.map +1 -1
  20. package/dist/clients/lensesClient.js +1 -1
  21. package/dist/clients/lensesClient.js.map +1 -1
  22. package/dist/clients/metricsClient.d.ts.map +1 -1
  23. package/dist/clients/metricsClient.js +1 -1
  24. package/dist/clients/metricsClient.js.map +1 -1
  25. package/dist/common/pageVisibility.js +1 -1
  26. package/dist/common/pageVisibility.js.map +1 -1
  27. package/dist/configuration.d.ts.map +1 -1
  28. package/dist/configuration.js +1 -1
  29. package/dist/configuration.js.map +1 -1
  30. package/dist/environment.d.ts.map +1 -1
  31. package/dist/environment.js +1 -1
  32. package/dist/environment.js.map +1 -1
  33. package/dist/extensions/RemoteApiServices.js +1 -1
  34. package/dist/extensions/RemoteApiServices.js.map +1 -1
  35. package/dist/extensions/UriHandlers.js +1 -1
  36. package/dist/extensions/UriHandlers.js.map +1 -1
  37. package/dist/extensions/uriHandlersRegister.d.ts.map +1 -1
  38. package/dist/extensions/uriHandlersRegister.js +1 -1
  39. package/dist/extensions/uriHandlersRegister.js.map +1 -1
  40. package/dist/generated-proto/blizzard/cameraKitEvents.d.ts +45 -9270
  41. package/dist/generated-proto/blizzard/cameraKitEvents.d.ts.map +1 -1
  42. package/dist/generated-proto/blizzard/cameraKitEvents.js +300 -123
  43. package/dist/generated-proto/blizzard/cameraKitEvents.js.map +1 -1
  44. package/dist/generated-proto/pb_schema/camera_kit/v3/business_events.d.ts +12 -32
  45. package/dist/generated-proto/pb_schema/camera_kit/v3/business_events.d.ts.map +1 -1
  46. package/dist/generated-proto/pb_schema/camera_kit/v3/business_events.js +77 -37
  47. package/dist/generated-proto/pb_schema/camera_kit/v3/business_events.js.map +1 -1
  48. package/dist/generated-proto/pb_schema/camera_kit/v3/export.d.ts +19 -454
  49. package/dist/generated-proto/pb_schema/camera_kit/v3/export.d.ts.map +1 -1
  50. package/dist/generated-proto/pb_schema/camera_kit/v3/export.js +219 -118
  51. package/dist/generated-proto/pb_schema/camera_kit/v3/export.js.map +1 -1
  52. package/dist/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.d.ts +12 -12
  53. package/dist/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.d.ts.map +1 -1
  54. package/dist/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.js +16 -13
  55. package/dist/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.js.map +1 -1
  56. package/dist/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.d.ts +12 -12
  57. package/dist/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.d.ts.map +1 -1
  58. package/dist/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.js +16 -13
  59. package/dist/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.js.map +1 -1
  60. package/dist/generated-proto/pb_schema/camera_kit/v3/legal_prompt.d.ts +13 -54
  61. package/dist/generated-proto/pb_schema/camera_kit/v3/legal_prompt.d.ts.map +1 -1
  62. package/dist/generated-proto/pb_schema/camera_kit/v3/legal_prompt.js +61 -34
  63. package/dist/generated-proto/pb_schema/camera_kit/v3/legal_prompt.js.map +1 -1
  64. package/dist/generated-proto/pb_schema/camera_kit/v3/lens.d.ts +19 -299
  65. package/dist/generated-proto/pb_schema/camera_kit/v3/lens.d.ts.map +1 -1
  66. package/dist/generated-proto/pb_schema/camera_kit/v3/lens.js +294 -133
  67. package/dist/generated-proto/pb_schema/camera_kit/v3/lens.js.map +1 -1
  68. package/dist/generated-proto/pb_schema/camera_kit/v3/operational_metrics.d.ts +14 -148
  69. package/dist/generated-proto/pb_schema/camera_kit/v3/operational_metrics.d.ts.map +1 -1
  70. package/dist/generated-proto/pb_schema/camera_kit/v3/operational_metrics.js +74 -48
  71. package/dist/generated-proto/pb_schema/camera_kit/v3/operational_metrics.js.map +1 -1
  72. package/dist/generated-proto/pb_schema/camera_kit/v3/ranking.d.ts +12 -18
  73. package/dist/generated-proto/pb_schema/camera_kit/v3/ranking.d.ts.map +1 -1
  74. package/dist/generated-proto/pb_schema/camera_kit/v3/ranking.js +34 -19
  75. package/dist/generated-proto/pb_schema/camera_kit/v3/ranking.js.map +1 -1
  76. package/dist/generated-proto/pb_schema/camera_kit/v3/remote_api_spec.d.ts +19 -516
  77. package/dist/generated-proto/pb_schema/camera_kit/v3/remote_api_spec.d.ts.map +1 -1
  78. package/dist/generated-proto/pb_schema/camera_kit/v3/remote_api_spec.js +164 -80
  79. package/dist/generated-proto/pb_schema/camera_kit/v3/remote_api_spec.js.map +1 -1
  80. package/dist/generated-proto/pb_schema/camera_kit/v3/service.d.ts +80 -2371
  81. package/dist/generated-proto/pb_schema/camera_kit/v3/service.d.ts.map +1 -1
  82. package/dist/generated-proto/pb_schema/camera_kit/v3/service.js +847 -174
  83. package/dist/generated-proto/pb_schema/camera_kit/v3/service.js.map +1 -1
  84. package/dist/generated-proto/pb_schema/cdp/cof/app_launch_type.d.ts.map +1 -1
  85. package/dist/generated-proto/pb_schema/cdp/cof/app_launch_type.js +0 -6
  86. package/dist/generated-proto/pb_schema/cdp/cof/app_launch_type.js.map +1 -1
  87. package/dist/generated-proto/pb_schema/cdp/cof/benchmark.d.ts +18 -59
  88. package/dist/generated-proto/pb_schema/cdp/cof/benchmark.d.ts.map +1 -1
  89. package/dist/generated-proto/pb_schema/cdp/cof/benchmark.js +88 -52
  90. package/dist/generated-proto/pb_schema/cdp/cof/benchmark.js.map +1 -1
  91. package/dist/generated-proto/pb_schema/cdp/cof/benchmark_name.d.ts.map +1 -1
  92. package/dist/generated-proto/pb_schema/cdp/cof/benchmark_name.js +0 -6
  93. package/dist/generated-proto/pb_schema/cdp/cof/benchmark_name.js.map +1 -1
  94. package/dist/generated-proto/pb_schema/cdp/cof/billboard_provided_signals.d.ts +12 -106
  95. package/dist/generated-proto/pb_schema/cdp/cof/billboard_provided_signals.d.ts.map +1 -1
  96. package/dist/generated-proto/pb_schema/cdp/cof/billboard_provided_signals.js +328 -140
  97. package/dist/generated-proto/pb_schema/cdp/cof/billboard_provided_signals.js.map +1 -1
  98. package/dist/generated-proto/pb_schema/cdp/cof/bolt_provided_signals.d.ts +12 -18
  99. package/dist/generated-proto/pb_schema/cdp/cof/bolt_provided_signals.d.ts.map +1 -1
  100. package/dist/generated-proto/pb_schema/cdp/cof/bolt_provided_signals.js +35 -20
  101. package/dist/generated-proto/pb_schema/cdp/cof/bolt_provided_signals.js.map +1 -1
  102. package/dist/generated-proto/pb_schema/cdp/cof/camera_provided_signals.d.ts +12 -34
  103. package/dist/generated-proto/pb_schema/cdp/cof/camera_provided_signals.d.ts.map +1 -1
  104. package/dist/generated-proto/pb_schema/cdp/cof/camera_provided_signals.js +86 -39
  105. package/dist/generated-proto/pb_schema/cdp/cof/camera_provided_signals.js.map +1 -1
  106. package/dist/generated-proto/pb_schema/cdp/cof/circumstance_service.d.ts +47 -28591
  107. package/dist/generated-proto/pb_schema/cdp/cof/circumstance_service.d.ts.map +1 -1
  108. package/dist/generated-proto/pb_schema/cdp/cof/circumstance_service.js +644 -348
  109. package/dist/generated-proto/pb_schema/cdp/cof/circumstance_service.js.map +1 -1
  110. package/dist/generated-proto/pb_schema/cdp/cof/cognac_provided_signals.d.ts +12 -12
  111. package/dist/generated-proto/pb_schema/cdp/cof/cognac_provided_signals.d.ts.map +1 -1
  112. package/dist/generated-proto/pb_schema/cdp/cof/cognac_provided_signals.js +16 -13
  113. package/dist/generated-proto/pb_schema/cdp/cof/cognac_provided_signals.js.map +1 -1
  114. package/dist/generated-proto/pb_schema/cdp/cof/config_request.d.ts +18 -214
  115. package/dist/generated-proto/pb_schema/cdp/cof/config_request.d.ts.map +1 -1
  116. package/dist/generated-proto/pb_schema/cdp/cof/config_request.js +362 -157
  117. package/dist/generated-proto/pb_schema/cdp/cof/config_request.js.map +1 -1
  118. package/dist/generated-proto/pb_schema/cdp/cof/config_response.d.ts +20 -3801
  119. package/dist/generated-proto/pb_schema/cdp/cof/config_response.d.ts.map +1 -1
  120. package/dist/generated-proto/pb_schema/cdp/cof/config_response.js +144 -46
  121. package/dist/generated-proto/pb_schema/cdp/cof/config_response.js.map +1 -1
  122. package/dist/generated-proto/pb_schema/cdp/cof/config_result.d.ts +49 -10060
  123. package/dist/generated-proto/pb_schema/cdp/cof/config_result.d.ts.map +1 -1
  124. package/dist/generated-proto/pb_schema/cdp/cof/config_result.js +443 -182
  125. package/dist/generated-proto/pb_schema/cdp/cof/config_result.js.map +1 -1
  126. package/dist/generated-proto/pb_schema/cdp/cof/contact_authorization_status.d.ts.map +1 -1
  127. package/dist/generated-proto/pb_schema/cdp/cof/contact_authorization_status.js +0 -6
  128. package/dist/generated-proto/pb_schema/cdp/cof/contact_authorization_status.js.map +1 -1
  129. package/dist/generated-proto/pb_schema/cdp/cof/content_manager_provided_signals.d.ts +12 -12
  130. package/dist/generated-proto/pb_schema/cdp/cof/content_manager_provided_signals.d.ts.map +1 -1
  131. package/dist/generated-proto/pb_schema/cdp/cof/content_manager_provided_signals.js +16 -13
  132. package/dist/generated-proto/pb_schema/cdp/cof/content_manager_provided_signals.js.map +1 -1
  133. package/dist/generated-proto/pb_schema/cdp/cof/creative_tools_provided_signals.d.ts +12 -14
  134. package/dist/generated-proto/pb_schema/cdp/cof/creative_tools_provided_signals.d.ts.map +1 -1
  135. package/dist/generated-proto/pb_schema/cdp/cof/creative_tools_provided_signals.js +24 -17
  136. package/dist/generated-proto/pb_schema/cdp/cof/creative_tools_provided_signals.js.map +1 -1
  137. package/dist/generated-proto/pb_schema/cdp/cof/debug_info.d.ts +14 -56
  138. package/dist/generated-proto/pb_schema/cdp/cof/debug_info.d.ts.map +1 -1
  139. package/dist/generated-proto/pb_schema/cdp/cof/debug_info.js +78 -45
  140. package/dist/generated-proto/pb_schema/cdp/cof/debug_info.js.map +1 -1
  141. package/dist/generated-proto/pb_schema/cdp/cof/discover_feed_provided_signals.d.ts +28 -0
  142. package/dist/generated-proto/pb_schema/cdp/cof/discover_feed_provided_signals.d.ts.map +1 -0
  143. package/dist/generated-proto/pb_schema/cdp/cof/discover_feed_provided_signals.js +89 -0
  144. package/dist/generated-proto/pb_schema/cdp/cof/discover_feed_provided_signals.js.map +1 -0
  145. package/dist/generated-proto/pb_schema/cdp/cof/feature_provided_signals.d.ts +28 -1103
  146. package/dist/generated-proto/pb_schema/cdp/cof/feature_provided_signals.d.ts.map +1 -1
  147. package/dist/generated-proto/pb_schema/cdp/cof/feature_provided_signals.js +358 -210
  148. package/dist/generated-proto/pb_schema/cdp/cof/feature_provided_signals.js.map +1 -1
  149. package/dist/generated-proto/pb_schema/cdp/cof/lenses_provided_signals.d.ts +12 -16
  150. package/dist/generated-proto/pb_schema/cdp/cof/lenses_provided_signals.d.ts.map +1 -1
  151. package/dist/generated-proto/pb_schema/cdp/cof/lenses_provided_signals.js +31 -23
  152. package/dist/generated-proto/pb_schema/cdp/cof/lenses_provided_signals.js.map +1 -1
  153. package/dist/generated-proto/pb_schema/cdp/cof/mdp_media_attribution.d.ts +13 -15
  154. package/dist/generated-proto/pb_schema/cdp/cof/mdp_media_attribution.d.ts.map +1 -1
  155. package/dist/generated-proto/pb_schema/cdp/cof/mdp_media_attribution.js +22 -15
  156. package/dist/generated-proto/pb_schema/cdp/cof/mdp_media_attribution.js.map +1 -1
  157. package/dist/generated-proto/pb_schema/cdp/cof/media_provided_signals.d.ts +12 -14
  158. package/dist/generated-proto/pb_schema/cdp/cof/media_provided_signals.d.ts.map +1 -1
  159. package/dist/generated-proto/pb_schema/cdp/cof/media_provided_signals.js +22 -15
  160. package/dist/generated-proto/pb_schema/cdp/cof/media_provided_signals.js.map +1 -1
  161. package/dist/generated-proto/pb_schema/cdp/cof/namespace.d.ts.map +1 -1
  162. package/dist/generated-proto/pb_schema/cdp/cof/namespace.js +0 -6
  163. package/dist/generated-proto/pb_schema/cdp/cof/namespace.js.map +1 -1
  164. package/dist/generated-proto/pb_schema/cdp/cof/opera_provided_signals.d.ts +12 -16
  165. package/dist/generated-proto/pb_schema/cdp/cof/opera_provided_signals.d.ts.map +1 -1
  166. package/dist/generated-proto/pb_schema/cdp/cof/opera_provided_signals.js +29 -18
  167. package/dist/generated-proto/pb_schema/cdp/cof/opera_provided_signals.js.map +1 -1
  168. package/dist/generated-proto/pb_schema/cdp/cof/perception_provided_signals.d.ts +12 -12
  169. package/dist/generated-proto/pb_schema/cdp/cof/perception_provided_signals.d.ts.map +1 -1
  170. package/dist/generated-proto/pb_schema/cdp/cof/perception_provided_signals.js +16 -13
  171. package/dist/generated-proto/pb_schema/cdp/cof/perception_provided_signals.js.map +1 -1
  172. package/dist/generated-proto/pb_schema/cdp/cof/recipients_provided_signals.d.ts +12 -12
  173. package/dist/generated-proto/pb_schema/cdp/cof/recipients_provided_signals.d.ts.map +1 -1
  174. package/dist/generated-proto/pb_schema/cdp/cof/recipients_provided_signals.js +16 -13
  175. package/dist/generated-proto/pb_schema/cdp/cof/recipients_provided_signals.js.map +1 -1
  176. package/dist/generated-proto/pb_schema/cdp/cof/routing_provided_signals.d.ts +12 -12
  177. package/dist/generated-proto/pb_schema/cdp/cof/routing_provided_signals.d.ts.map +1 -1
  178. package/dist/generated-proto/pb_schema/cdp/cof/routing_provided_signals.js +16 -13
  179. package/dist/generated-proto/pb_schema/cdp/cof/routing_provided_signals.js.map +1 -1
  180. package/dist/generated-proto/pb_schema/cdp/cof/snap_kit_provided_signals.d.ts +12 -12
  181. package/dist/generated-proto/pb_schema/cdp/cof/snap_kit_provided_signals.d.ts.map +1 -1
  182. package/dist/generated-proto/pb_schema/cdp/cof/snap_kit_provided_signals.js +16 -13
  183. package/dist/generated-proto/pb_schema/cdp/cof/snap_kit_provided_signals.js.map +1 -1
  184. package/dist/generated-proto/pb_schema/cdp/cof/upload_provided_signals.d.ts +12 -18
  185. package/dist/generated-proto/pb_schema/cdp/cof/upload_provided_signals.d.ts.map +1 -1
  186. package/dist/generated-proto/pb_schema/cdp/cof/upload_provided_signals.js +35 -20
  187. package/dist/generated-proto/pb_schema/cdp/cof/upload_provided_signals.js.map +1 -1
  188. package/dist/generated-proto/pb_schema/cdp/media/snap_source.d.ts.map +1 -1
  189. package/dist/generated-proto/pb_schema/cdp/media/snap_source.js +0 -6
  190. package/dist/generated-proto/pb_schema/cdp/media/snap_source.js.map +1 -1
  191. package/dist/generated-proto/pb_schema/common/ruid.d.ts +12 -16
  192. package/dist/generated-proto/pb_schema/common/ruid.d.ts.map +1 -1
  193. package/dist/generated-proto/pb_schema/common/ruid.js +28 -17
  194. package/dist/generated-proto/pb_schema/common/ruid.js.map +1 -1
  195. package/dist/generated-proto/pb_schema/common/value.d.ts +25 -123
  196. package/dist/generated-proto/pb_schema/common/value.d.ts.map +1 -1
  197. package/dist/generated-proto/pb_schema/common/value.js +136 -71
  198. package/dist/generated-proto/pb_schema/common/value.js.map +1 -1
  199. package/dist/generated-proto/pb_schema/content/asset.d.ts +12 -14
  200. package/dist/generated-proto/pb_schema/content/asset.d.ts.map +1 -1
  201. package/dist/generated-proto/pb_schema/content/asset.js +22 -15
  202. package/dist/generated-proto/pb_schema/content/asset.js.map +1 -1
  203. package/dist/generated-proto/pb_schema/content/media_reference.d.ts +13 -46
  204. package/dist/generated-proto/pb_schema/content/media_reference.d.ts.map +1 -1
  205. package/dist/generated-proto/pb_schema/content/media_reference.js +86 -47
  206. package/dist/generated-proto/pb_schema/content/media_reference.js.map +1 -1
  207. package/dist/generated-proto/pb_schema/content/media_source.d.ts.map +1 -1
  208. package/dist/generated-proto/pb_schema/content/media_source.js +0 -6
  209. package/dist/generated-proto/pb_schema/content/media_source.js.map +1 -1
  210. package/dist/generated-proto/pb_schema/content/media_types.d.ts.map +1 -1
  211. package/dist/generated-proto/pb_schema/content/media_types.js +0 -6
  212. package/dist/generated-proto/pb_schema/content/media_types.js.map +1 -1
  213. package/dist/generated-proto/pb_schema/google/api/annotations.d.ts.map +1 -1
  214. package/dist/generated-proto/pb_schema/google/api/annotations.js +0 -6
  215. package/dist/generated-proto/pb_schema/google/api/annotations.js.map +1 -1
  216. package/dist/generated-proto/pb_schema/google/api/http.d.ts +15 -3336
  217. package/dist/generated-proto/pb_schema/google/api/http.d.ts.map +1 -1
  218. package/dist/generated-proto/pb_schema/google/api/http.js +129 -68
  219. package/dist/generated-proto/pb_schema/google/api/http.js.map +1 -1
  220. package/dist/generated-proto/pb_schema/google/protobuf/any.d.ts +12 -14
  221. package/dist/generated-proto/pb_schema/google/protobuf/any.d.ts.map +1 -1
  222. package/dist/generated-proto/pb_schema/google/protobuf/any.js +24 -17
  223. package/dist/generated-proto/pb_schema/google/protobuf/any.js.map +1 -1
  224. package/dist/generated-proto/pb_schema/google/protobuf/descriptor.d.ts +126 -50157
  225. package/dist/generated-proto/pb_schema/google/protobuf/descriptor.d.ts.map +1 -1
  226. package/dist/generated-proto/pb_schema/google/protobuf/descriptor.js +1162 -563
  227. package/dist/generated-proto/pb_schema/google/protobuf/descriptor.js.map +1 -1
  228. package/dist/generated-proto/pb_schema/google/protobuf/timestamp.d.ts +12 -14
  229. package/dist/generated-proto/pb_schema/google/protobuf/timestamp.d.ts.map +1 -1
  230. package/dist/generated-proto/pb_schema/google/protobuf/timestamp.js +23 -19
  231. package/dist/generated-proto/pb_schema/google/protobuf/timestamp.js.map +1 -1
  232. package/dist/generated-proto/pb_schema/google/protobuf/wrappers.d.ts +20 -84
  233. package/dist/generated-proto/pb_schema/google/protobuf/wrappers.d.ts.map +1 -1
  234. package/dist/generated-proto/pb_schema/google/protobuf/wrappers.js +141 -77
  235. package/dist/generated-proto/pb_schema/google/protobuf/wrappers.js.map +1 -1
  236. package/dist/generated-proto/pb_schema/lenses/geocircle.d.ts +12 -23
  237. package/dist/generated-proto/pb_schema/lenses/geocircle.d.ts.map +1 -1
  238. package/dist/generated-proto/pb_schema/lenses/geocircle.js +26 -18
  239. package/dist/generated-proto/pb_schema/lenses/geocircle.js.map +1 -1
  240. package/dist/generated-proto/pb_schema/lenses/geopoint.d.ts +12 -14
  241. package/dist/generated-proto/pb_schema/lenses/geopoint.d.ts.map +1 -1
  242. package/dist/generated-proto/pb_schema/lenses/geopoint.js +22 -15
  243. package/dist/generated-proto/pb_schema/lenses/geopoint.js.map +1 -1
  244. package/dist/generated-proto/pb_schema/lenses/launch_params.d.ts +12 -12
  245. package/dist/generated-proto/pb_schema/lenses/launch_params.d.ts.map +1 -1
  246. package/dist/generated-proto/pb_schema/lenses/launch_params.js +18 -15
  247. package/dist/generated-proto/pb_schema/lenses/launch_params.js.map +1 -1
  248. package/dist/generated-proto/pb_schema/lenses/launchdata.d.ts +15 -324
  249. package/dist/generated-proto/pb_schema/lenses/launchdata.d.ts.map +1 -1
  250. package/dist/generated-proto/pb_schema/lenses/launchdata.js +112 -66
  251. package/dist/generated-proto/pb_schema/lenses/launchdata.js.map +1 -1
  252. package/dist/generated-proto/pb_schema/lenses/lures.d.ts +12 -91
  253. package/dist/generated-proto/pb_schema/lenses/lures.d.ts.map +1 -1
  254. package/dist/generated-proto/pb_schema/lenses/lures.js +37 -28
  255. package/dist/generated-proto/pb_schema/lenses/lures.js.map +1 -1
  256. package/dist/generated-proto/pb_schema/lenses/persistent_store.d.ts +12 -12
  257. package/dist/generated-proto/pb_schema/lenses/persistent_store.d.ts.map +1 -1
  258. package/dist/generated-proto/pb_schema/lenses/persistent_store.js +18 -15
  259. package/dist/generated-proto/pb_schema/lenses/persistent_store.js.map +1 -1
  260. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_service.d.ts +30 -396
  261. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_service.d.ts.map +1 -1
  262. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_service.js +520 -240
  263. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_service.js.map +1 -1
  264. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_spec.d.ts +30 -2429
  265. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_spec.d.ts.map +1 -1
  266. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_spec.js +991 -440
  267. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_spec.js.map +1 -1
  268. package/dist/generated-proto/pb_schema/lenses/snappable.d.ts +27 -783
  269. package/dist/generated-proto/pb_schema/lenses/snappable.d.ts.map +1 -1
  270. package/dist/generated-proto/pb_schema/lenses/snappable.js +502 -245
  271. package/dist/generated-proto/pb_schema/lenses/snappable.js.map +1 -1
  272. package/dist/generated-proto/pb_schema/lenses/user_data.d.ts +15 -174
  273. package/dist/generated-proto/pb_schema/lenses/user_data.d.ts.map +1 -1
  274. package/dist/generated-proto/pb_schema/lenses/user_data.js +144 -77
  275. package/dist/generated-proto/pb_schema/lenses/user_data.js.map +1 -1
  276. package/dist/generated-proto/pb_schema/snapdoc/capture_characteristics.d.ts +12 -14
  277. package/dist/generated-proto/pb_schema/snapdoc/capture_characteristics.d.ts.map +1 -1
  278. package/dist/generated-proto/pb_schema/snapdoc/capture_characteristics.js +24 -17
  279. package/dist/generated-proto/pb_schema/snapdoc/capture_characteristics.js.map +1 -1
  280. package/dist/generated-proto/pb_schema/snapdoc/extensions.d.ts +14 -18
  281. package/dist/generated-proto/pb_schema/snapdoc/extensions.d.ts.map +1 -1
  282. package/dist/generated-proto/pb_schema/snapdoc/extensions.js +29 -18
  283. package/dist/generated-proto/pb_schema/snapdoc/extensions.js.map +1 -1
  284. package/dist/generated-proto/pb_schema/snapdoc/media.d.ts +52 -576
  285. package/dist/generated-proto/pb_schema/snapdoc/media.d.ts.map +1 -1
  286. package/dist/generated-proto/pb_schema/snapdoc/media.js +615 -318
  287. package/dist/generated-proto/pb_schema/snapdoc/media.js.map +1 -1
  288. package/dist/generated-proto/pb_schema/snapdoc/media_codec_formats.d.ts.map +1 -1
  289. package/dist/generated-proto/pb_schema/snapdoc/media_codec_formats.js +0 -6
  290. package/dist/generated-proto/pb_schema/snapdoc/media_codec_formats.js.map +1 -1
  291. package/dist/generated-proto/pb_schema/snapdoc/media_file_formats.d.ts.map +1 -1
  292. package/dist/generated-proto/pb_schema/snapdoc/media_file_formats.js +0 -6
  293. package/dist/generated-proto/pb_schema/snapdoc/media_file_formats.js.map +1 -1
  294. package/dist/generated-proto/pb_schema/snapdoc/media_id.d.ts +12 -12
  295. package/dist/generated-proto/pb_schema/snapdoc/media_id.d.ts.map +1 -1
  296. package/dist/generated-proto/pb_schema/snapdoc/media_id.js +17 -17
  297. package/dist/generated-proto/pb_schema/snapdoc/media_id.js.map +1 -1
  298. package/dist/generated-proto/pb_schema/snapdoc/snap_component_type.d.ts.map +1 -1
  299. package/dist/generated-proto/pb_schema/snapdoc/snap_component_type.js +0 -6
  300. package/dist/generated-proto/pb_schema/snapdoc/snap_component_type.js.map +1 -1
  301. package/dist/handlers/cameraKitServiceFetchHandlerFactory.d.ts.map +1 -1
  302. package/dist/handlers/cameraKitServiceFetchHandlerFactory.js +1 -1
  303. package/dist/handlers/cameraKitServiceFetchHandlerFactory.js.map +1 -1
  304. package/dist/handlers/defaultFetchHandler.js +1 -1
  305. package/dist/handlers/defaultFetchHandler.js.map +1 -1
  306. package/dist/handlers/requestStateEmittingHandler.js +1 -1
  307. package/dist/handlers/requestStateEmittingHandler.js.map +1 -1
  308. package/dist/index.d.ts +3 -4
  309. package/dist/index.d.ts.map +1 -1
  310. package/dist/index.js +2 -3
  311. package/dist/index.js.map +1 -1
  312. package/dist/legal/legalPrompt.js +1 -1
  313. package/dist/legal/legalPrompt.js.map +1 -1
  314. package/dist/legal/legalState.js +1 -1
  315. package/dist/legal/legalState.js.map +1 -1
  316. package/dist/lens/LensPersistenceStore.js +1 -1
  317. package/dist/lens/LensPersistenceStore.js.map +1 -1
  318. package/dist/lens/LensRepository.js +1 -1
  319. package/dist/lens/LensRepository.js.map +1 -1
  320. package/dist/lens/LensSource.js +1 -1
  321. package/dist/lens/LensSource.js.map +1 -1
  322. package/dist/lens/assets/LensAssetRepository.js +1 -1
  323. package/dist/lens/assets/LensAssetRepository.js.map +1 -1
  324. package/dist/lens/assets/LensAssetsProvider.js +1 -1
  325. package/dist/lens/assets/LensAssetsProvider.js.map +1 -1
  326. package/dist/lens/assets/deviceDependentAssetLoader.js +1 -1
  327. package/dist/lens/assets/deviceDependentAssetLoader.js.map +1 -1
  328. package/dist/lens/assets/remoteMediaAssetLoaderFactory.js +1 -1
  329. package/dist/lens/assets/remoteMediaAssetLoaderFactory.js.map +1 -1
  330. package/dist/lens/assets/staticAssetLoader.js +1 -1
  331. package/dist/lens/assets/staticAssetLoader.js.map +1 -1
  332. package/dist/lens/cameraKitLensSource.d.ts.map +1 -1
  333. package/dist/lens/cameraKitLensSource.js +6 -6
  334. package/dist/lens/cameraKitLensSource.js.map +1 -1
  335. package/dist/lens/fetchWatermarkLens.d.ts.map +1 -1
  336. package/dist/lens/fetchWatermarkLens.js +1 -1
  337. package/dist/lens/fetchWatermarkLens.js.map +1 -1
  338. package/dist/lens/userDataAccessResolver.d.ts +52 -0
  339. package/dist/lens/userDataAccessResolver.d.ts.map +1 -0
  340. package/dist/lens/userDataAccessResolver.js +3 -0
  341. package/dist/lens/userDataAccessResolver.js.map +1 -0
  342. package/dist/lens-client-interface/filePicker.d.ts.map +1 -1
  343. package/dist/lens-client-interface/filePicker.js +1 -1
  344. package/dist/lens-client-interface/filePicker.js.map +1 -1
  345. package/dist/lens-client-interface/lensClientInterface.js +1 -1
  346. package/dist/lens-client-interface/lensClientInterface.js.map +1 -1
  347. package/dist/lens-core-module/loader/bootstrapURLs.d.ts +2 -0
  348. package/dist/lens-core-module/loader/bootstrapURLs.d.ts.map +1 -1
  349. package/dist/lens-core-module/loader/bootstrapURLs.js +22 -11
  350. package/dist/lens-core-module/loader/bootstrapURLs.js.map +1 -1
  351. package/dist/lens-core-module/loader/lensCoreFactory.d.ts.map +1 -1
  352. package/dist/lens-core-module/loader/lensCoreFactory.js +1 -1
  353. package/dist/lens-core-module/loader/lensCoreFactory.js.map +1 -1
  354. package/dist/lensCoreWasmVersions.js +3 -3
  355. package/dist/lensCoreWasmVersions.js.map +1 -1
  356. package/dist/logger/logEntries.js +1 -1
  357. package/dist/logger/logEntries.js.map +1 -1
  358. package/dist/logger/registerLogEntriesSubscriber.d.ts.map +1 -1
  359. package/dist/logger/registerLogEntriesSubscriber.js +1 -1
  360. package/dist/logger/registerLogEntriesSubscriber.js.map +1 -1
  361. package/dist/media-sources/CameraKitSource.d.ts +6 -0
  362. package/dist/media-sources/CameraKitSource.d.ts.map +1 -1
  363. package/dist/media-sources/CameraKitSource.js +2 -2
  364. package/dist/media-sources/CameraKitSource.js.map +1 -1
  365. package/dist/metrics/businessEventsReporter.js +1 -1
  366. package/dist/metrics/businessEventsReporter.js.map +1 -1
  367. package/dist/metrics/metricsEventTarget.js +1 -1
  368. package/dist/metrics/metricsEventTarget.js.map +1 -1
  369. package/dist/metrics/reporters/reportBenchmarks.d.ts.map +1 -1
  370. package/dist/metrics/reporters/reportBenchmarks.js +1 -1
  371. package/dist/metrics/reporters/reportBenchmarks.js.map +1 -1
  372. package/dist/metrics/reporters/reportGlobalException.js +1 -1
  373. package/dist/metrics/reporters/reportGlobalException.js.map +1 -1
  374. package/dist/metrics/reporters/reportHttpMetrics.js +1 -1
  375. package/dist/metrics/reporters/reportHttpMetrics.js.map +1 -1
  376. package/dist/metrics/reporters/reportLegalState.js +1 -1
  377. package/dist/metrics/reporters/reportLegalState.js.map +1 -1
  378. package/dist/metrics/reporters/reportLensAndAssetDownload.d.ts.map +1 -1
  379. package/dist/metrics/reporters/reportLensAndAssetDownload.js +1 -1
  380. package/dist/metrics/reporters/reportLensAndAssetDownload.js.map +1 -1
  381. package/dist/metrics/reporters/reportLensValidationFailed.js +1 -1
  382. package/dist/metrics/reporters/reportLensValidationFailed.js.map +1 -1
  383. package/dist/metrics/reporters/reportLensView.js +1 -1
  384. package/dist/metrics/reporters/reportLensView.js.map +1 -1
  385. package/dist/metrics/reporters/reportLensWait.js +1 -1
  386. package/dist/metrics/reporters/reportLensWait.js.map +1 -1
  387. package/dist/metrics/reporters/reportPlatformCapabilities.d.ts.map +1 -1
  388. package/dist/metrics/reporters/reportPlatformCapabilities.js +1 -1
  389. package/dist/metrics/reporters/reportPlatformCapabilities.js.map +1 -1
  390. package/dist/metrics/reporters/reportSessionException.js +1 -1
  391. package/dist/metrics/reporters/reportSessionException.js.map +1 -1
  392. package/dist/metrics/reporters/reportUserSession.js +1 -1
  393. package/dist/metrics/reporters/reportUserSession.js.map +1 -1
  394. package/dist/metrics/reporters/reporters.d.ts +1 -1
  395. package/dist/metrics/reporters/reporters.d.ts.map +1 -1
  396. package/dist/metrics/reporters/reporters.js +1 -1
  397. package/dist/metrics/reporters/reporters.js.map +1 -1
  398. package/dist/platform/platformCapabilities.d.ts +6 -16
  399. package/dist/platform/platformCapabilities.d.ts.map +1 -1
  400. package/dist/platform/platformCapabilities.js +15 -15
  401. package/dist/platform/platformCapabilities.js.map +1 -1
  402. package/dist/remote-configuration/cofHandler.d.ts.map +1 -1
  403. package/dist/remote-configuration/cofHandler.js +1 -1
  404. package/dist/remote-configuration/cofHandler.js.map +1 -1
  405. package/dist/remote-configuration/preloadConfiguration.js +1 -1
  406. package/dist/remote-configuration/preloadConfiguration.js.map +1 -1
  407. package/dist/remote-configuration/remoteConfiguration.d.ts.map +1 -1
  408. package/dist/remote-configuration/remoteConfiguration.js +1 -1
  409. package/dist/remote-configuration/remoteConfiguration.js.map +1 -1
  410. package/dist/session/CameraKitSession.d.ts +6 -1
  411. package/dist/session/CameraKitSession.d.ts.map +1 -1
  412. package/dist/session/CameraKitSession.js +1 -1
  413. package/dist/session/CameraKitSession.js.map +1 -1
  414. package/dist/session/LensKeyboard.js +1 -1
  415. package/dist/session/LensKeyboard.js.map +1 -1
  416. package/dist/session/lensState.d.ts +3 -2
  417. package/dist/session/lensState.d.ts.map +1 -1
  418. package/dist/session/lensState.js +21 -6
  419. package/dist/session/lensState.js.map +1 -1
  420. package/dist/session/sessionState.js +1 -1
  421. package/dist/session/sessionState.js.map +1 -1
  422. package/docs/html/assets/navigation.js +1 -1
  423. package/docs/html/assets/search.js +1 -1
  424. package/docs/html/classes/CameraKit.html +2 -2
  425. package/docs/html/classes/CameraKitSession.html +7 -3
  426. package/docs/html/classes/CameraKitSource.html +6 -2
  427. package/docs/html/classes/LensPerformanceMeasurement.html +2 -2
  428. package/docs/html/classes/LensPerformanceMetrics.html +2 -2
  429. package/docs/html/classes/LensRepository.html +2 -2
  430. package/docs/html/classes/Transform2D.html +2 -2
  431. package/docs/html/classes/TypedCustomEvent.html +2 -2
  432. package/docs/html/classes/TypedEventTarget.html +2 -2
  433. package/docs/html/enums/Lens_CameraFacing.html +2 -2
  434. package/docs/html/functions/bootstrapCameraKit.html +2 -2
  435. package/docs/html/functions/createExtension.html +2 -2
  436. package/docs/html/functions/createImageSource.html +2 -2
  437. package/docs/html/functions/createMediaStreamSource.html +2 -2
  438. package/docs/html/functions/createVideoSource.html +2 -2
  439. package/docs/html/functions/estimateLensPerformance.html +2 -2
  440. package/docs/html/functions/filePickerFactory.html +2 -4
  441. package/docs/html/functions/lensSourcesFactory.html +3 -5
  442. package/docs/html/functions/remoteApiServicesFactory.html +1 -3
  443. package/docs/html/hierarchy.html +1 -1
  444. package/docs/html/index.html +3 -3
  445. package/docs/html/interfaces/BitmojiUserInfo.html +2 -2
  446. package/docs/html/interfaces/CameraKitBootstrapConfiguration.html +2 -2
  447. package/docs/html/interfaces/CameraKitDeviceOptions.html +2 -2
  448. package/docs/html/interfaces/CameraKitSourceInfo.html +2 -2
  449. package/docs/html/interfaces/CameraKitSourceSubscriber.html +2 -2
  450. package/docs/html/interfaces/ComputedFrameMetrics.html +2 -2
  451. package/docs/html/interfaces/CreateSessionOptions.html +2 -2
  452. package/docs/html/interfaces/EstimatedLensPerformance.html +2 -2
  453. package/docs/html/interfaces/FriendUserInfo.html +2 -2
  454. package/docs/html/interfaces/FunctionSourceOptions.html +2 -2
  455. package/docs/html/interfaces/Lens.html +2 -2
  456. package/docs/html/interfaces/LensCreator.html +2 -2
  457. package/docs/html/interfaces/LensLaunchData.html +2 -2
  458. package/docs/html/interfaces/LensSource.html +2 -2
  459. package/docs/html/interfaces/LensUserData.html +2 -2
  460. package/docs/html/interfaces/LoadAssetRequest.html +2 -2
  461. package/docs/html/interfaces/MediaStreamSourceOptions.html +2 -2
  462. package/docs/html/interfaces/Preview.html +2 -2
  463. package/docs/html/interfaces/RemoteApiRequest.html +2 -2
  464. package/docs/html/interfaces/RemoteApiResponse.html +2 -2
  465. package/docs/html/interfaces/RemoteApiService.html +2 -2
  466. package/docs/html/interfaces/Snapcode.html +2 -2
  467. package/docs/html/interfaces/UriCancelRequest.html +2 -2
  468. package/docs/html/interfaces/UriRequest.html +2 -2
  469. package/docs/html/interfaces/UriResponse.html +2 -2
  470. package/docs/html/interfaces/VideoSourceOptions.html +2 -2
  471. package/docs/html/modules.html +2 -4
  472. package/docs/html/types/ArgumentValidationError.html +2 -2
  473. package/docs/html/types/AssetLoader.html +2 -2
  474. package/docs/html/types/AssetResponse.html +1 -1
  475. package/docs/html/types/AssetTiming.html +2 -2
  476. package/docs/html/types/BenchmarkError.html +1 -1
  477. package/docs/html/types/BootstrapError.html +2 -2
  478. package/docs/html/types/CacheKeyNotFoundError.html +1 -1
  479. package/docs/html/types/CameraKitSessionEventListener.html +2 -2
  480. package/docs/html/types/CameraKitSessionEvents.html +2 -2
  481. package/docs/html/types/CameraKitSourceError.html +1 -1
  482. package/docs/html/types/ConfigurationError.html +2 -2
  483. package/docs/html/types/FetchHandler.html +1 -1
  484. package/docs/html/types/FilePicker.html +2 -2
  485. package/docs/html/types/FilePickerOptions.html +2 -2
  486. package/docs/html/types/FilePickerResult.html +2 -2
  487. package/docs/html/types/Keyboard.html +2 -2
  488. package/docs/html/types/KeyboardEvents.html +2 -2
  489. package/docs/html/types/LegalError.html +1 -1
  490. package/docs/html/types/LensAbortError.html +2 -2
  491. package/docs/html/types/LensAssetError.html +2 -2
  492. package/docs/html/types/LensContentValidationError.html +1 -1
  493. package/docs/html/types/LensError.html +1 -1
  494. package/docs/html/types/LensExecutionError.html +2 -2
  495. package/docs/html/types/LensImagePickerError.html +2 -2
  496. package/docs/html/types/LensLaunchParams.html +2 -2
  497. package/docs/html/types/LensMetricsEvents.html +2 -2
  498. package/docs/html/types/LensPerformanceCluster.html +1 -1
  499. package/docs/html/types/LensView.html +2 -2
  500. package/docs/html/types/LensWait.html +2 -2
  501. package/docs/html/types/Matrix.html +2 -2
  502. package/docs/html/types/PersistentStoreError.html +2 -2
  503. package/docs/html/types/PlatformNotSupportedError.html +2 -2
  504. package/docs/html/types/PublicContainer.html +2 -2
  505. package/docs/html/types/PublicServices.html +2 -2
  506. package/docs/html/types/RemoteApiCancelRequestHandler.html +2 -2
  507. package/docs/html/types/RemoteApiRequestHandler.html +2 -2
  508. package/docs/html/types/RemoteApiServices.html +1 -1
  509. package/docs/html/types/RemoteApiStatus.html +2 -2
  510. package/docs/html/types/RenderTarget.html +2 -2
  511. package/docs/html/types/Uri.html +1 -1
  512. package/docs/html/types/WebGLError.html +1 -1
  513. package/docs/html/types/Zodiac.html +1 -1
  514. package/docs/html/variables/extensionRequestContext.html +2 -2
  515. package/docs/md/README.md +1 -1
  516. package/docs/md/classes/CameraKit.md +1 -1
  517. package/docs/md/classes/CameraKitSession.md +7 -2
  518. package/docs/md/classes/CameraKitSource.md +6 -1
  519. package/docs/md/classes/LensPerformanceMeasurement.md +1 -1
  520. package/docs/md/classes/LensPerformanceMetrics.md +1 -1
  521. package/docs/md/classes/LensRepository.md +1 -1
  522. package/docs/md/classes/Transform2D.md +1 -1
  523. package/docs/md/classes/TypedCustomEvent.md +1 -1
  524. package/docs/md/classes/TypedEventTarget.md +1 -1
  525. package/docs/md/enums/Lens_CameraFacing.md +1 -1
  526. package/docs/md/interfaces/BitmojiUserInfo.md +1 -1
  527. package/docs/md/interfaces/CameraKitBootstrapConfiguration.md +1 -1
  528. package/docs/md/interfaces/CameraKitDeviceOptions.md +1 -1
  529. package/docs/md/interfaces/CameraKitSourceInfo.md +1 -1
  530. package/docs/md/interfaces/CameraKitSourceSubscriber.md +1 -1
  531. package/docs/md/interfaces/ComputedFrameMetrics.md +1 -1
  532. package/docs/md/interfaces/CreateSessionOptions.md +1 -1
  533. package/docs/md/interfaces/EstimatedLensPerformance.md +1 -1
  534. package/docs/md/interfaces/FriendUserInfo.md +1 -1
  535. package/docs/md/interfaces/FunctionSourceOptions.md +1 -1
  536. package/docs/md/interfaces/Lens.md +1 -1
  537. package/docs/md/interfaces/LensCreator.md +1 -1
  538. package/docs/md/interfaces/LensLaunchData.md +1 -1
  539. package/docs/md/interfaces/LensSource.md +1 -1
  540. package/docs/md/interfaces/LensUserData.md +1 -1
  541. package/docs/md/interfaces/LoadAssetRequest.md +1 -1
  542. package/docs/md/interfaces/MediaStreamSourceOptions.md +1 -1
  543. package/docs/md/interfaces/Preview.md +1 -1
  544. package/docs/md/interfaces/RemoteApiRequest.md +1 -1
  545. package/docs/md/interfaces/RemoteApiResponse.md +1 -1
  546. package/docs/md/interfaces/RemoteApiService.md +1 -1
  547. package/docs/md/interfaces/Snapcode.md +1 -1
  548. package/docs/md/interfaces/UriCancelRequest.md +1 -1
  549. package/docs/md/interfaces/UriRequest.md +1 -1
  550. package/docs/md/interfaces/UriResponse.md +1 -1
  551. package/docs/md/interfaces/VideoSourceOptions.md +1 -1
  552. package/docs/md/modules.md +5 -166
  553. package/package.json +6 -6
  554. package/dist/dependency-injection/Container.d.ts +0 -177
  555. package/dist/dependency-injection/Container.d.ts.map +0 -1
  556. package/dist/dependency-injection/Container.js +0 -72
  557. package/dist/dependency-injection/Container.js.map +0 -1
  558. package/dist/dependency-injection/Injectable.d.ts +0 -96
  559. package/dist/dependency-injection/Injectable.d.ts.map +0 -1
  560. package/dist/dependency-injection/Injectable.js +0 -37
  561. package/dist/dependency-injection/Injectable.js.map +0 -1
  562. package/dist/dependency-injection/PartialContainer.d.ts +0 -86
  563. package/dist/dependency-injection/PartialContainer.d.ts.map +0 -1
  564. package/dist/dependency-injection/PartialContainer.js +0 -28
  565. package/dist/dependency-injection/PartialContainer.js.map +0 -1
  566. package/dist/dependency-injection/RootServices.d.ts +0 -76
  567. package/dist/dependency-injection/RootServices.d.ts.map +0 -1
  568. package/dist/dependency-injection/RootServices.js.map +0 -1
  569. package/dist/dependency-injection/types.d.ts +0 -57
  570. package/dist/dependency-injection/types.d.ts.map +0 -1
  571. package/dist/dependency-injection/types.js +0 -2
  572. package/dist/dependency-injection/types.js.map +0 -1
  573. package/docs/html/functions/ConcatInjectable.html +0 -19
  574. package/docs/html/functions/Injectable.html +0 -17
  575. /package/dist/{dependency-injection/RootServices.js → RootServices.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"remote_api_spec.js","sourceRoot":"","sources":["../../../../../src/generated-proto/pb_schema/lenses/remote_api/remote_api_spec.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,oBAAoB,CAAC;AAErC,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAGjD,MAAM,CAAN,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAE/B,kDAAyB,CAAA;IAEzB,sCAAa,CAAA;IAEb,wCAAe,CAAA;IACf,sDAA6B,CAAA;AAC/B,CAAC,EARW,qBAAqB,KAArB,qBAAqB,QAQhC;AAED,MAAM,UAAU,6BAA6B,CAAC,MAAW;IACvD,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,YAAY;YACf,OAAO,qBAAqB,CAAC,UAAU,CAAC;QAC1C,KAAK,CAAC,CAAC;QACP,KAAK,MAAM;YACT,OAAO,qBAAqB,CAAC,IAAI,CAAC;QACpC,KAAK,CAAC,CAAC;QACP,KAAK,OAAO;YACV,OAAO,qBAAqB,CAAC,KAAK,CAAC;QACrC,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,qBAAqB,CAAC,YAAY,CAAC;KAC7C;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,MAA6B;IACzE,QAAQ,MAAM,EAAE;QACd,KAAK,qBAAqB,CAAC,UAAU;YACnC,OAAO,CAAC,CAAC;QACX,KAAK,qBAAqB,CAAC,IAAI;YAC7B,OAAO,CAAC,CAAC;QACX,KAAK,qBAAqB,CAAC,KAAK;YAC9B,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAGD,MAAM,CAAN,IAAY,sBAUX;AAVD,WAAY,sBAAsB;IAEhC,+CAAqB,CAAA;IAErB,qDAA2B,CAAA;IAE3B,2CAAiB,CAAA;IAEjB,yCAAe,CAAA;IACf,uDAA6B,CAAA;AAC/B,CAAC,EAVW,sBAAsB,KAAtB,sBAAsB,QAUjC;AAED,MAAM,UAAU,8BAA8B,CAAC,MAAW;IACxD,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,UAAU;YACb,OAAO,sBAAsB,CAAC,QAAQ,CAAC;QACzC,KAAK,CAAC,CAAC;QACP,KAAK,aAAa;YAChB,OAAO,sBAAsB,CAAC,WAAW,CAAC;QAC5C,KAAK,CAAC,CAAC;QACP,KAAK,QAAQ;YACX,OAAO,sBAAsB,CAAC,MAAM,CAAC;QACvC,KAAK,CAAC,CAAC;QACP,KAAK,OAAO;YACV,OAAO,sBAAsB,CAAC,KAAK,CAAC;QACtC,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,sBAAsB,CAAC,YAAY,CAAC;KAC9C;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,MAA8B;IAC3E,QAAQ,MAAM,EAAE;QACd,KAAK,sBAAsB,CAAC,QAAQ;YAClC,OAAO,CAAC,CAAC;QACX,KAAK,sBAAsB,CAAC,WAAW;YACrC,OAAO,CAAC,CAAC;QACX,KAAK,sBAAsB,CAAC,MAAM;YAChC,OAAO,CAAC,CAAC;QACX,KAAK,sBAAsB,CAAC,KAAK;YAC/B,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAMD,MAAM,CAAN,IAAY,yBAUX;AAVD,WAAY,yBAAyB;IAEnC,oDAAuB,CAAA;IAEvB,4CAAe,CAAA;IAEf,4CAAe,CAAA;IAEf,gDAAmB,CAAA;IACnB,0DAA6B,CAAA;AAC/B,CAAC,EAVW,yBAAyB,KAAzB,yBAAyB,QAUpC;AAED,MAAM,UAAU,iCAAiC,CAAC,MAAW;IAC3D,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,WAAW;YACd,OAAO,yBAAyB,CAAC,SAAS,CAAC;QAC7C,KAAK,CAAC,CAAC;QACP,KAAK,OAAO;YACV,OAAO,yBAAyB,CAAC,KAAK,CAAC;QACzC,KAAK,CAAC,CAAC;QACP,KAAK,OAAO;YACV,OAAO,yBAAyB,CAAC,KAAK,CAAC;QACzC,KAAK,CAAC,CAAC;QACP,KAAK,SAAS;YACZ,OAAO,yBAAyB,CAAC,OAAO,CAAC;QAC3C,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,yBAAyB,CAAC,YAAY,CAAC;KACjD;AACH,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,MAAiC;IACjF,QAAQ,MAAM,EAAE;QACd,KAAK,yBAAyB,CAAC,SAAS;YACtC,OAAO,CAAC,CAAC;QACX,KAAK,yBAAyB,CAAC,KAAK;YAClC,OAAO,CAAC,CAAC;QACX,KAAK,yBAAyB,CAAC,KAAK;YAClC,OAAO,CAAC,CAAC;QACX,KAAK,yBAAyB,CAAC,OAAO;YACpC,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAGD,MAAM,CAAN,IAAY,0BAUX;AAVD,WAAY,0BAA0B;IAEpC,2EAA6C,CAAA;IAE7C,mDAAqB,CAAA;IAErB,iDAAmB,CAAA;IAEnB,yDAA2B,CAAA;IAC3B,2DAA6B,CAAA;AAC/B,CAAC,EAVW,0BAA0B,KAA1B,0BAA0B,QAUrC;AAED,MAAM,UAAU,kCAAkC,CAAC,MAAW;IAC5D,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,sBAAsB;YACzB,OAAO,0BAA0B,CAAC,oBAAoB,CAAC;QACzD,KAAK,CAAC,CAAC;QACP,KAAK,UAAU;YACb,OAAO,0BAA0B,CAAC,QAAQ,CAAC;QAC7C,KAAK,CAAC,CAAC;QACP,KAAK,SAAS;YACZ,OAAO,0BAA0B,CAAC,OAAO,CAAC;QAC5C,KAAK,CAAC,CAAC;QACP,KAAK,aAAa;YAChB,OAAO,0BAA0B,CAAC,WAAW,CAAC;QAChD,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,0BAA0B,CAAC,YAAY,CAAC;KAClD;AACH,CAAC;AAED,MAAM,UAAU,kCAAkC,CAAC,MAAkC;IACnF,QAAQ,MAAM,EAAE;QACd,KAAK,0BAA0B,CAAC,oBAAoB;YAClD,OAAO,CAAC,CAAC;QACX,KAAK,0BAA0B,CAAC,QAAQ;YACtC,OAAO,CAAC,CAAC;QACX,KAAK,0BAA0B,CAAC,OAAO;YACrC,OAAO,CAAC,CAAC;QACX,KAAK,0BAA0B,CAAC,WAAW;YACzC,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAGD,MAAM,CAAN,IAAY,2BAQX;AARD,WAAY,2BAA2B;IAErC,8EAA+C,CAAA;IAE/C,sDAAuB,CAAA;IAEvB,4DAA6B,CAAA;IAC7B,4DAA6B,CAAA;AAC/B,CAAC,EARW,2BAA2B,KAA3B,2BAA2B,QAQtC;AAED,MAAM,UAAU,mCAAmC,CAAC,MAAW;IAC7D,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,uBAAuB;YAC1B,OAAO,2BAA2B,CAAC,qBAAqB,CAAC;QAC3D,KAAK,CAAC,CAAC;QACP,KAAK,WAAW;YACd,OAAO,2BAA2B,CAAC,SAAS,CAAC;QAC/C,KAAK,CAAC,CAAC;QACP,KAAK,cAAc;YACjB,OAAO,2BAA2B,CAAC,YAAY,CAAC;QAClD,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,2BAA2B,CAAC,YAAY,CAAC;KACnD;AACH,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,MAAmC;IACrF,QAAQ,MAAM,EAAE;QACd,KAAK,2BAA2B,CAAC,qBAAqB;YACpD,OAAO,CAAC,CAAC;QACX,KAAK,2BAA2B,CAAC,SAAS;YACxC,OAAO,CAAC,CAAC;QACX,KAAK,2BAA2B,CAAC,YAAY;YAC3C,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAMD,MAAM,CAAN,IAAY,iBAUX;AAVD,WAAY,iBAAiB;IAE3B,kEAA6C,CAAA;IAE7C,4CAAuB,CAAA;IAEvB,0CAAqB,CAAA;IAErB,wCAAmB,CAAA;IACnB,kDAA6B,CAAA;AAC/B,CAAC,EAVW,iBAAiB,KAAjB,iBAAiB,QAU5B;AAED,MAAM,UAAU,yBAAyB,CAAC,MAAW;IACnD,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,sBAAsB;YACzB,OAAO,iBAAiB,CAAC,oBAAoB,CAAC;QAChD,KAAK,CAAC,CAAC;QACP,KAAK,WAAW;YACd,OAAO,iBAAiB,CAAC,SAAS,CAAC;QACrC,KAAK,CAAC,CAAC;QACP,KAAK,UAAU;YACb,OAAO,iBAAiB,CAAC,QAAQ,CAAC;QACpC,KAAK,CAAC,CAAC;QACP,KAAK,SAAS;YACZ,OAAO,iBAAiB,CAAC,OAAO,CAAC;QACnC,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,iBAAiB,CAAC,YAAY,CAAC;KACzC;AACH,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,MAAyB;IACjE,QAAQ,MAAM,EAAE;QACd,KAAK,iBAAiB,CAAC,oBAAoB;YACzC,OAAO,CAAC,CAAC;QACX,KAAK,iBAAiB,CAAC,SAAS;YAC9B,OAAO,CAAC,CAAC;QACX,KAAK,iBAAiB,CAAC,QAAQ;YAC7B,OAAO,CAAC,CAAC;QACX,KAAK,iBAAiB,CAAC,OAAO;YAC5B,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAGD,MAAM,CAAN,IAAY,cAcX;AAdD,WAAY,cAAc;IAExB,uDAAqC,CAAA;IAMrC,uCAAqB,CAAA;IAErB,qCAAmB,CAAA;IAEnB,uCAAqB,CAAA;IACrB,+CAA6B,CAAA;AAC/B,CAAC,EAdW,cAAc,KAAd,cAAc,QAczB;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAW;IAChD,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,kBAAkB;YACrB,OAAO,cAAc,CAAC,gBAAgB,CAAC;QACzC,KAAK,CAAC,CAAC;QACP,KAAK,UAAU;YACb,OAAO,cAAc,CAAC,QAAQ,CAAC;QACjC,KAAK,CAAC,CAAC;QACP,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC,OAAO,CAAC;QAChC,KAAK,CAAC,CAAC;QACP,KAAK,UAAU;YACb,OAAO,cAAc,CAAC,QAAQ,CAAC;QACjC,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,cAAc,CAAC,YAAY,CAAC;KACtC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAsB;IAC3D,QAAQ,MAAM,EAAE;QACd,KAAK,cAAc,CAAC,gBAAgB;YAClC,OAAO,CAAC,CAAC;QACX,KAAK,cAAc,CAAC,QAAQ;YAC1B,OAAO,CAAC,CAAC;QACX,KAAK,cAAc,CAAC,OAAO;YACzB,OAAO,CAAC,CAAC;QACX,KAAK,cAAc,CAAC,QAAQ;YAC1B,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAMD,MAAM,CAAN,IAAY,WAQX;AARD,WAAY,WAAW;IAErB,wDAAyC,CAAA;IAEzC,oDAAqC,CAAA;IAErC,sCAAuB,CAAA;IACvB,4CAA6B,CAAA;AAC/B,CAAC,EARW,WAAW,KAAX,WAAW,QAQtB;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAW;IAC7C,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,oBAAoB;YACvB,OAAO,WAAW,CAAC,kBAAkB,CAAC;QACxC,KAAK,CAAC,CAAC;QACP,KAAK,kBAAkB;YACrB,OAAO,WAAW,CAAC,gBAAgB,CAAC;QACtC,KAAK,CAAC,CAAC;QACP,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,SAAS,CAAC;QAC/B,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,WAAW,CAAC,YAAY,CAAC;KACnC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,QAAQ,MAAM,EAAE;QACd,KAAK,WAAW,CAAC,kBAAkB;YACjC,OAAO,CAAC,CAAC;QACX,KAAK,WAAW,CAAC,gBAAgB;YAC/B,OAAO,CAAC,CAAC;QACX,KAAK,WAAW,CAAC,SAAS;YACxB,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAGD,MAAM,CAAN,IAAY,cAUX;AAVD,WAAY,cAAc;IAExB,iEAA+C,CAAA;IAE/C,uCAAqB,CAAA;IAErB,2CAAyB,CAAA;IAEzB,2CAAyB,CAAA;IACzB,+CAA6B,CAAA;AAC/B,CAAC,EAVW,cAAc,KAAd,cAAc,QAUzB;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAW;IAChD,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,uBAAuB;YAC1B,OAAO,cAAc,CAAC,qBAAqB,CAAC;QAC9C,KAAK,CAAC,CAAC;QACP,KAAK,UAAU;YACb,OAAO,cAAc,CAAC,QAAQ,CAAC;QACjC,KAAK,CAAC,CAAC;QACP,KAAK,YAAY;YACf,OAAO,cAAc,CAAC,UAAU,CAAC;QACnC,KAAK,CAAC,CAAC;QACP,KAAK,YAAY;YACf,OAAO,cAAc,CAAC,UAAU,CAAC;QACnC,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,cAAc,CAAC,YAAY,CAAC;KACtC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAsB;IAC3D,QAAQ,MAAM,EAAE;QACd,KAAK,cAAc,CAAC,qBAAqB;YACvC,OAAO,CAAC,CAAC;QACX,KAAK,cAAc,CAAC,QAAQ;YAC1B,OAAO,CAAC,CAAC;QACX,KAAK,cAAc,CAAC,UAAU;YAC5B,OAAO,CAAC,CAAC;QACX,KAAK,cAAc,CAAC,UAAU;YAC5B,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAGD,MAAM,CAAN,IAAY,yBAMX;AAND,WAAY,yBAAyB;IAEnC,kEAAqC,CAAA;IAErC,oDAAuB,CAAA;IACvB,0DAA6B,CAAA;AAC/B,CAAC,EANW,yBAAyB,KAAzB,yBAAyB,QAMpC;AAED,MAAM,UAAU,iCAAiC,CAAC,MAAW;IAC3D,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,kBAAkB;YACrB,OAAO,yBAAyB,CAAC,gBAAgB,CAAC;QACpD,KAAK,CAAC,CAAC;QACP,KAAK,WAAW;YACd,OAAO,yBAAyB,CAAC,SAAS,CAAC;QAC7C,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,yBAAyB,CAAC,YAAY,CAAC;KACjD;AACH,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,MAAiC;IACjF,QAAQ,MAAM,EAAE;QACd,KAAK,yBAAyB,CAAC,gBAAgB;YAC7C,OAAO,CAAC,CAAC;QACX,KAAK,yBAAyB,CAAC,SAAS;YACtC,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAGD,MAAM,CAAN,IAAY,mBAUX;AAVD,WAAY,mBAAmB;IAE7B,wDAAiC,CAAA;IAEjC,0CAAmB,CAAA;IAEnB,wCAAiB,CAAA;IAEjB,sDAA+B,CAAA;IAC/B,oDAA6B,CAAA;AAC/B,CAAC,EAVW,mBAAmB,KAAnB,mBAAmB,QAU9B;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAW;IACrD,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,gBAAgB;YACnB,OAAO,mBAAmB,CAAC,cAAc,CAAC;QAC5C,KAAK,CAAC,CAAC;QACP,KAAK,SAAS;YACZ,OAAO,mBAAmB,CAAC,OAAO,CAAC;QACrC,KAAK,CAAC,CAAC;QACP,KAAK,QAAQ;YACX,OAAO,mBAAmB,CAAC,MAAM,CAAC;QACpC,KAAK,CAAC,CAAC;QACP,KAAK,eAAe;YAClB,OAAO,mBAAmB,CAAC,aAAa,CAAC;QAC3C,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,mBAAmB,CAAC,YAAY,CAAC;KAC3C;AACH,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAA2B;IACrE,QAAQ,MAAM,EAAE;QACd,KAAK,mBAAmB,CAAC,cAAc;YACrC,OAAO,CAAC,CAAC;QACX,KAAK,mBAAmB,CAAC,OAAO;YAC9B,OAAO,CAAC,CAAC;QACX,KAAK,mBAAmB,CAAC,MAAM;YAC7B,OAAO,CAAC,CAAC;QACX,KAAK,mBAAmB,CAAC,aAAa;YACpC,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AA+BD,MAAM,CAAN,IAAY,+CAUX;AAVD,WAAY,+CAA+C;IAEzD,oFAAiC,CAAA;IAEjC,kEAAe,CAAA;IAEf,oEAAiB,CAAA;IAEjB,gEAAa,CAAA;IACb,gFAA6B,CAAA;AAC/B,CAAC,EAVW,+CAA+C,KAA/C,+CAA+C,QAU1D;AAED,MAAM,UAAU,uDAAuD,CACrE,MAAW;IAEX,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,gBAAgB;YACnB,OAAO,+CAA+C,CAAC,cAAc,CAAC;QACxE,KAAK,CAAC,CAAC;QACP,KAAK,OAAO;YACV,OAAO,+CAA+C,CAAC,KAAK,CAAC;QAC/D,KAAK,CAAC,CAAC;QACP,KAAK,QAAQ;YACX,OAAO,+CAA+C,CAAC,MAAM,CAAC;QAChE,KAAK,CAAC,CAAC;QACP,KAAK,MAAM;YACT,OAAO,+CAA+C,CAAC,IAAI,CAAC;QAC9D,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,+CAA+C,CAAC,YAAY,CAAC;KACvE;AACH,CAAC;AAED,MAAM,UAAU,uDAAuD,CACrE,MAAuD;IAEvD,QAAQ,MAAM,EAAE;QACd,KAAK,+CAA+C,CAAC,cAAc;YACjE,OAAO,CAAC,CAAC;QACX,KAAK,+CAA+C,CAAC,KAAK;YACxD,OAAO,CAAC,CAAC;QACX,KAAK,+CAA+C,CAAC,MAAM;YACzD,OAAO,CAAC,CAAC;QACX,KAAK,+CAA+C,CAAC,IAAI;YACvD,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAmFD,MAAM,CAAN,IAAY,uCAcX;AAdD,WAAY,uCAAuC;IAEjD,wEAA6B,CAAA;IAE7B,sDAAW,CAAA;IAEX,wDAAa,CAAA;IAEb,sDAAW,CAAA;IAEX,4DAAiB,CAAA;IAEjB,0DAAe,CAAA;IACf,wEAA6B,CAAA;AAC/B,CAAC,EAdW,uCAAuC,KAAvC,uCAAuC,QAclD;AAED,MAAM,UAAU,+CAA+C,CAAC,MAAW;IACzE,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,cAAc;YACjB,OAAO,uCAAuC,CAAC,YAAY,CAAC;QAC9D,KAAK,CAAC,CAAC;QACP,KAAK,KAAK;YACR,OAAO,uCAAuC,CAAC,GAAG,CAAC;QACrD,KAAK,CAAC,CAAC;QACP,KAAK,MAAM;YACT,OAAO,uCAAuC,CAAC,IAAI,CAAC;QACtD,KAAK,CAAC,CAAC;QACP,KAAK,KAAK;YACR,OAAO,uCAAuC,CAAC,GAAG,CAAC;QACrD,KAAK,CAAC,CAAC;QACP,KAAK,QAAQ;YACX,OAAO,uCAAuC,CAAC,MAAM,CAAC;QACxD,KAAK,CAAC,CAAC;QACP,KAAK,OAAO;YACV,OAAO,uCAAuC,CAAC,KAAK,CAAC;QACvD,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,uCAAuC,CAAC,YAAY,CAAC;KAC/D;AACH,CAAC;AAED,MAAM,UAAU,+CAA+C,CAC7D,MAA+C;IAE/C,QAAQ,MAAM,EAAE;QACd,KAAK,uCAAuC,CAAC,YAAY;YACvD,OAAO,CAAC,CAAC;QACX,KAAK,uCAAuC,CAAC,GAAG;YAC9C,OAAO,CAAC,CAAC;QACX,KAAK,uCAAuC,CAAC,IAAI;YAC/C,OAAO,CAAC,CAAC;QACX,KAAK,uCAAuC,CAAC,GAAG;YAC9C,OAAO,CAAC,CAAC;QACX,KAAK,uCAAuC,CAAC,MAAM;YACjD,OAAO,CAAC,CAAC;QACX,KAAK,uCAAuC,CAAC,KAAK;YAChD,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AA0ED,MAAM,CAAN,IAAY,+BAYX;AAZD,WAAY,+BAA+B;IAEzC,wEAAqC,CAAA;IAErC,4EAAyC,CAAA;IAEzC,gGAA6D,CAAA;IAE7D,wDAAqB,CAAA;IAErB,4EAAyC,CAAA;IACzC,gEAA6B,CAAA;AAC/B,CAAC,EAZW,+BAA+B,KAA/B,+BAA+B,QAY1C;AAED,MAAM,UAAU,uCAAuC,CAAC,MAAW;IACjE,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,kBAAkB;YACrB,OAAO,+BAA+B,CAAC,gBAAgB,CAAC;QAC1D,KAAK,CAAC,CAAC;QACP,KAAK,oBAAoB;YACvB,OAAO,+BAA+B,CAAC,kBAAkB,CAAC;QAC5D,KAAK,CAAC,CAAC;QACP,KAAK,8BAA8B;YACjC,OAAO,+BAA+B,CAAC,4BAA4B,CAAC;QACtE,KAAK,CAAC,CAAC;QACP,KAAK,UAAU;YACb,OAAO,+BAA+B,CAAC,QAAQ,CAAC;QAClD,KAAK,CAAC,CAAC;QACP,KAAK,oBAAoB;YACvB,OAAO,+BAA+B,CAAC,kBAAkB,CAAC;QAC5D,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,+BAA+B,CAAC,YAAY,CAAC;KACvD;AACH,CAAC;AAED,MAAM,UAAU,uCAAuC,CAAC,MAAuC;IAC7F,QAAQ,MAAM,EAAE;QACd,KAAK,+BAA+B,CAAC,gBAAgB;YACnD,OAAO,CAAC,CAAC;QACX,KAAK,+BAA+B,CAAC,kBAAkB;YACrD,OAAO,CAAC,CAAC;QACX,KAAK,+BAA+B,CAAC,4BAA4B;YAC/D,OAAO,CAAC,CAAC;QACX,KAAK,+BAA+B,CAAC,QAAQ;YAC3C,OAAO,CAAC,CAAC;QACX,KAAK,+BAA+B,CAAC,kBAAkB;YACrD,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAaD,MAAM,CAAN,IAAY,sCAYX;AAZD,WAAY,sCAAsC;IAEhD,uEAA6B,CAAA;IAE7B,uDAAa,CAAA;IAEb,mEAAyB,CAAA;IAEzB,6DAAmB,CAAA;IAEnB,2DAAiB,CAAA;IACjB,uEAA6B,CAAA;AAC/B,CAAC,EAZW,sCAAsC,KAAtC,sCAAsC,QAYjD;AAED,MAAM,UAAU,8CAA8C,CAAC,MAAW;IACxE,QAAQ,MAAM,EAAE;QACd,KAAK,CAAC,CAAC;QACP,KAAK,cAAc;YACjB,OAAO,sCAAsC,CAAC,YAAY,CAAC;QAC7D,KAAK,CAAC,CAAC;QACP,KAAK,MAAM;YACT,OAAO,sCAAsC,CAAC,IAAI,CAAC;QACrD,KAAK,CAAC,CAAC;QACP,KAAK,YAAY;YACf,OAAO,sCAAsC,CAAC,UAAU,CAAC;QAC3D,KAAK,CAAC,CAAC;QACP,KAAK,SAAS;YACZ,OAAO,sCAAsC,CAAC,OAAO,CAAC;QACxD,KAAK,CAAC,CAAC;QACP,KAAK,QAAQ;YACX,OAAO,sCAAsC,CAAC,MAAM,CAAC;QACvD,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,sCAAsC,CAAC,YAAY,CAAC;KAC9D;AACH,CAAC;AAED,MAAM,UAAU,8CAA8C,CAAC,MAA8C;IAC3G,QAAQ,MAAM,EAAE;QACd,KAAK,sCAAsC,CAAC,YAAY;YACtD,OAAO,CAAC,CAAC;QACX,KAAK,sCAAsC,CAAC,IAAI;YAC9C,OAAO,CAAC,CAAC;QACX,KAAK,sCAAsC,CAAC,UAAU;YACpD,OAAO,CAAC,CAAC;QACX,KAAK,sCAAsC,CAAC,OAAO;YACjD,OAAO,CAAC,CAAC;QACX,KAAK,sCAAsC,CAAC,MAAM;YAChD,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AA4ID,SAAS,uCAAuC;IAC9C,OAAO;QACL,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,+CAA+C,CAAC,cAAc;QACxE,QAAQ,EAAE,KAAK;QACf,YAAY,EAAE,EAAE;QAChB,YAAY,EAAE,EAAE;QAChB,QAAQ,EAAE,KAAK;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,MAAM,CAAC,OAAsC,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QACrF,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,+CAA+C,CAAC,cAAc,EAAE;YACvF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,uDAAuD,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;SACpG;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC1C;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC1C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,uCAAuC,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,uDAAuD,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC3F,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjC,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CACT,MAAS;;QAET,MAAM,OAAO,GAAG,uCAAuC,EAAE,CAAC;QAC1D,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,+CAA+C,CAAC,cAAc,CAAC;QACrG,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,KAAK,CAAC;QAC5C,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,KAAK,CAAC;QAC5C,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,wCAAwC;IAC/C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,MAAM,CAAC,OAAuC,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QACtF,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE;YAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,EAAE,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;SAC9C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,wCAAwC,EAAE,CAAC;QAC3D,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACrC,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CACT,MAAS;;QAET,MAAM,OAAO,GAAG,wCAAwC,EAAE,CAAC;QAC3D,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,KAAK,CAAC;QACxC,OAAO,CAAC,UAAU,GAAG,MAAA,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC;QAC7C,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,mCAAmC;IAC1C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM,CAAC,OAAkC,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QACjF,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,EAAE,EAAE;YAC9B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAC/C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,mCAAmC,EAAE,CAAC;QACtD,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAA6D,MAAS;;QAC/E,MAAM,OAAO,GAAG,mCAAmC,EAAE,CAAC;QACtD,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,EAAE,CAAC;QAC/C,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,gCAAgC;IACvC,OAAO;QACL,aAAa,EAAE,sBAAsB,CAAC,QAAQ;QAC9C,WAAW,EAAE,yBAAyB,CAAC,SAAS;QAChD,MAAM,EAAE,GAAG;KACZ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,MAAM,CAAC,OAA+B,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QAC9E,IAAI,OAAO,CAAC,aAAa,KAAK,sBAAsB,CAAC,QAAQ,EAAE;YAC7D,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,8BAA8B,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;SAC/E;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,yBAAyB,CAAC,SAAS,EAAE;YAC/D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,iCAAiC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SACjF;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG,EAAE;YAC1B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,gCAAgC,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,aAAa,GAAG,8BAA8B,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBACvE,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,WAAW,GAAG,iCAAiC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBACxE,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBACtD,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAA0D,MAAS;;QAC5E,MAAM,OAAO,GAAG,gCAAgC,EAAE,CAAC;QACnD,OAAO,CAAC,aAAa,GAAG,MAAA,MAAM,CAAC,aAAa,mCAAI,sBAAsB,CAAC,QAAQ,CAAC;QAChF,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,yBAAyB,CAAC,SAAS,CAAC;QAChF,OAAO,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,GAAG,CAAC;QACtC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,+BAA+B;IACtC,OAAO;QACL,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;QACX,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,qBAAqB,CAAC,UAAU;QACtC,eAAe,EAAE,IAAI,UAAU,EAAE;QACjC,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;QAChB,iBAAiB,EAAE,KAAK;QACxB,aAAa,EAAE,SAAS;QACxB,mBAAmB,EAAE,mBAAmB,CAAC,cAAc;QACvD,iBAAiB,EAAE,EAAE;QACrB,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,EAAE;QACtB,uBAAuB,EAAE,KAAK;QAC9B,wBAAwB,EAAE,KAAK;QAC/B,gBAAgB,EAAE,EAAE;QACpB,iBAAiB,EAAE,EAAE;QACrB,kBAAkB,EAAE,EAAE;KACvB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,CAAC,OAA8B,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QAC7E,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE;YAC/B,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC,CAAC,CAAC;SAClE;QACD,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,UAAU,EAAE;YAClC,6BAA6B,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC7E;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;YAClC,yBAAyB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACvF;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACzC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,qBAAqB,CAAC,UAAU,EAAE;YACrD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,6BAA6B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;SACtE;QACD,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SAClD;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,EAAE,EAAE;YAC9B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAC/C;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,iBAAiB,KAAK,IAAI,EAAE;YACtC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SACnD;QACD,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE;YACvC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACzF;QACD,IAAI,OAAO,CAAC,mBAAmB,KAAK,mBAAmB,CAAC,cAAc,EAAE;YACtE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;SACnF;QACD,IAAI,OAAO,CAAC,iBAAiB,KAAK,EAAE,EAAE;YACpC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SACtD;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,EAAE,EAAE;YAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAChD;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,kBAAkB,EAAE;YAC1C,8BAA8B,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC/E;QACD,IAAI,OAAO,CAAC,uBAAuB,KAAK,IAAI,EAAE;YAC5C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;SAC1D;QACD,IAAI,OAAO,CAAC,wBAAwB,KAAK,IAAI,EAAE;YAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;SAC3D;QACD,IAAI,OAAO,CAAC,gBAAgB,KAAK,EAAE,EAAE;YACnC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;SACrD;QACD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,iBAAiB,EAAE;YACzC,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC,CAAC;SACrD;QACD,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,kBAAkB,EAAE;YAC1C,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtD;QACD,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;QAClD,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;wBACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;wBAC1C,OAAO,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE;4BACxB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;yBACvF;qBACF;yBAAM;wBACL,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBACvF;oBACD,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBACvF,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,yBAAyB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC7E,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,6BAA6B,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC7D,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,eAAe,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;oBACzC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,iBAAiB,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC1C,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,aAAa,GAAG,sBAAsB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC/E,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,mBAAmB,GAAG,2BAA2B,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC1E,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC5C,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAChG,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,uBAAuB,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChD,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,wBAAwB,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjD,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC3C,MAAM;gBACR,KAAK,EAAE;oBACL,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;wBACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;wBAC1C,OAAO,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE;4BACxB,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;yBACpF;qBACF;yBAAM;wBACL,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBACpF;oBACD,MAAM;gBACR,KAAK,EAAE;oBACL,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;wBACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;wBAC1C,OAAO,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE;4BACxB,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,mCAAmC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;yBACtF;qBACF;yBAAM;wBACL,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,mCAAmC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBACtF;oBACD,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAyD,MAAS;;QAC3E,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;QAClD,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,OAAO,GAAG,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QACtD,OAAO,CAAC,UAAU,GAAG,CAAA,MAAA,MAAM,CAAC,UAAU,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QACvG,OAAO,CAAC,QAAQ;YACd,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;gBACvD,CAAC,CAAC,yBAAyB,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;gBACxD,CAAC,CAAC,SAAS,CAAC;QAChB,OAAO,CAAC,KAAK,GAAG,MAAA,MAAM,CAAC,KAAK,mCAAI,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,qBAAqB,CAAC,UAAU,CAAC;QAC/D,OAAO,CAAC,eAAe,GAAG,MAAA,MAAM,CAAC,eAAe,mCAAI,IAAI,UAAU,EAAE,CAAC;QACrE,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,iBAAiB,GAAG,MAAA,MAAM,CAAC,iBAAiB,mCAAI,KAAK,CAAC;QAC9D,OAAO,CAAC,aAAa;YACnB,MAAM,CAAC,aAAa,KAAK,SAAS,IAAI,MAAM,CAAC,aAAa,KAAK,IAAI;gBACjE,CAAC,CAAC,sBAAsB,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC;gBAC1D,CAAC,CAAC,SAAS,CAAC;QAChB,OAAO,CAAC,mBAAmB,GAAG,MAAA,MAAM,CAAC,mBAAmB,mCAAI,mBAAmB,CAAC,cAAc,CAAC;QAC/F,OAAO,CAAC,iBAAiB,GAAG,MAAA,MAAM,CAAC,iBAAiB,mCAAI,EAAE,CAAC;QAC3D,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,kBAAkB;YACxB,CAAA,MAAA,MAAM,CAAC,kBAAkB,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC7F,OAAO,CAAC,uBAAuB,GAAG,MAAA,MAAM,CAAC,uBAAuB,mCAAI,KAAK,CAAC;QAC1E,OAAO,CAAC,wBAAwB,GAAG,MAAA,MAAM,CAAC,wBAAwB,mCAAI,KAAK,CAAC;QAC5E,OAAO,CAAC,gBAAgB,GAAG,MAAA,MAAM,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QACzD,OAAO,CAAC,iBAAiB,GAAG,CAAA,MAAA,MAAM,CAAC,iBAAiB,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC1E,OAAO,CAAC,kBAAkB,GAAG,CAAA,MAAA,MAAM,CAAC,kBAAkB,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC5E,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,+BAA+B;IACtC,OAAO;QACL,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;QAChB,iBAAiB,EAAE,KAAK;QACxB,mBAAmB,EAAE,mBAAmB,CAAC,cAAc;QACvD,iBAAiB,EAAE,EAAE;QACrB,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,EAAE;QACtB,eAAe,EAAE,IAAI,UAAU,EAAE;QACjC,iBAAiB,EAAE,EAAE;KACtB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,CAAC,OAA8B,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QAC7E,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACzC;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,EAAE,EAAE;YAC9B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAC/C;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,iBAAiB,KAAK,IAAI,EAAE;YACtC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SACnD;QACD,IAAI,OAAO,CAAC,mBAAmB,KAAK,mBAAmB,CAAC,cAAc,EAAE;YACtE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;SACnF;QACD,IAAI,OAAO,CAAC,iBAAiB,KAAK,EAAE,EAAE;YACpC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SACrD;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,EAAE,EAAE;YAC9B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAC/C;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,kBAAkB,EAAE;YAC1C,8BAA8B,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9E;QACD,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SAClD;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,iBAAiB,EAAE;YACzC,6BAA6B,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC7E;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;QAClD,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,iBAAiB,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC1C,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,mBAAmB,GAAG,2BAA2B,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC1E,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC5C,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAChG,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,eAAe,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;oBACzC,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAC9F,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAyD,MAAS;;QAC3E,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;QAClD,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,KAAK,GAAG,MAAA,MAAM,CAAC,KAAK,mCAAI,EAAE,CAAC;QACnC,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,iBAAiB,GAAG,MAAA,MAAM,CAAC,iBAAiB,mCAAI,KAAK,CAAC;QAC9D,OAAO,CAAC,mBAAmB,GAAG,MAAA,MAAM,CAAC,mBAAmB,mCAAI,mBAAmB,CAAC,cAAc,CAAC;QAC/F,OAAO,CAAC,iBAAiB,GAAG,MAAA,MAAM,CAAC,iBAAiB,mCAAI,EAAE,CAAC;QAC3D,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,kBAAkB;YACxB,CAAA,MAAA,MAAM,CAAC,kBAAkB,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC7F,OAAO,CAAC,eAAe,GAAG,MAAA,MAAM,CAAC,eAAe,mCAAI,IAAI,UAAU,EAAE,CAAC;QACrE,OAAO,CAAC,iBAAiB;YACvB,CAAA,MAAA,MAAM,CAAC,iBAAiB,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC3F,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,wCAAwC;IAC/C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,MAAM,CAAC,OAAuC,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QACtF,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE;YAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,EAAE,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;SAC9C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,wCAAwC,EAAE,CAAC;QAC3D,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACrC,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CACT,MAAS;;QAET,MAAM,OAAO,GAAG,wCAAwC,EAAE,CAAC;QAC3D,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,KAAK,CAAC;QACxC,OAAO,CAAC,UAAU,GAAG,MAAA,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC;QAC7C,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,uCAAuC;IAC9C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,MAAM,CAAC,OAAsC,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QACrF,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC1C;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC1C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,uCAAuC,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjC,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CACT,MAAS;;QAET,MAAM,OAAO,GAAG,uCAAuC,EAAE,CAAC;QAC1D,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,KAAK,CAAC;QAC5C,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,KAAK,CAAC;QAC5C,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,+BAA+B;IACtC,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,+BAA+B,CAAC,gBAAgB;QAC3D,gBAAgB,EAAE,EAAE;QACpB,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,EAAE;QACT,YAAY,EAAE,EAAE;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,CAAC,OAA8B,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QAC7E,IAAI,OAAO,CAAC,QAAQ,KAAK,EAAE,EAAE;YAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC5C;QACD,IAAI,OAAO,CAAC,SAAS,KAAK,+BAA+B,CAAC,gBAAgB,EAAE;YAC1E,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,uCAAuC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;SACrF;QACD,IAAI,OAAO,CAAC,gBAAgB,KAAK,EAAE,EAAE;YACnC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;SACpD;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,EAAE,EAAE;YAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC5C;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACzC;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;QAClD,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACnC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,SAAS,GAAG,uCAAuC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC5E,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC3C,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACnC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAyD,MAAS;;QAC3E,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;QAClD,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,EAAE,CAAC;QACzC,OAAO,CAAC,SAAS,GAAG,MAAA,MAAM,CAAC,SAAS,mCAAI,+BAA+B,CAAC,gBAAgB,CAAC;QACzF,OAAO,CAAC,gBAAgB,GAAG,MAAA,MAAM,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QACzD,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,EAAE,CAAC;QACzC,OAAO,CAAC,KAAK,GAAG,MAAA,MAAM,CAAC,KAAK,mCAAI,EAAE,CAAC;QACnC,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,iCAAiC;IACxC,OAAO,EAAE,cAAc,EAAE,sCAAsC,CAAC,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACrG,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,MAAM,CAAC,OAAgC,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;;QAC/E,IAAI,OAAO,CAAC,cAAc,KAAK,sCAAsC,CAAC,YAAY,EAAE;YAClF,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,8CAA8C,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;SAChG;QACD,IAAI,CAAA,MAAA,OAAO,CAAC,OAAO,0CAAE,KAAK,MAAK,aAAa,EAAE;YAC5C,6BAA6B,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACtG;QACD,IAAI,CAAA,MAAA,OAAO,CAAC,OAAO,0CAAE,KAAK,MAAK,cAAc,EAAE;YAC7C,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC/F;QACD,IAAI,CAAA,MAAA,OAAO,CAAC,OAAO,0CAAE,KAAK,MAAK,cAAc,EAAE;YAC7C,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC5F;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,iCAAiC,EAAE,CAAC;QACpD,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,cAAc,GAAG,8CAA8C,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBACxF,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,OAAO,GAAG;wBAChB,KAAK,EAAE,aAAa;wBACpB,WAAW,EAAE,6BAA6B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;qBAC3E,CAAC;oBACF,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,OAAO,GAAG;wBAChB,KAAK,EAAE,cAAc;wBACrB,YAAY,EAAE,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;qBACpE,CAAC;oBACF,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,OAAO,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;oBAC9G,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAA2D,MAAS;;QAC7E,MAAM,OAAO,GAAG,iCAAiC,EAAE,CAAC;QACpD,OAAO,CAAC,cAAc,GAAG,MAAA,MAAM,CAAC,cAAc,mCAAI,sCAAsC,CAAC,YAAY,CAAC;QACtG,IACE,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,KAAK,MAAK,aAAa;YACvC,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,WAAW,MAAK,SAAS;YACzC,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,WAAW,MAAK,IAAI,EACpC;YACA,OAAO,CAAC,OAAO,GAAG;gBAChB,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,6BAA6B,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;aACnF,CAAC;SACH;QACD,IACE,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,KAAK,MAAK,cAAc;YACxC,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,YAAY,MAAK,SAAS;YAC1C,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,YAAY,MAAK,IAAI,EACrC;YACA,OAAO,CAAC,OAAO,GAAG;gBAChB,KAAK,EAAE,cAAc;gBACrB,YAAY,EAAE,qBAAqB,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;aAC7E,CAAC;SACH;QACD,IACE,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,KAAK,MAAK,cAAc;YACxC,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,YAAY,MAAK,SAAS;YAC1C,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,YAAY,MAAK,IAAI,EACrC;YACA,OAAO,CAAC,OAAO,GAAG;gBAChB,KAAK,EAAE,cAAc;gBACrB,YAAY,EAAE,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;aAC1E,CAAC;SACH;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,4BAA4B;IACnC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM,CAAC,OAA2B,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QAC1E,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE;YAC9B,6BAA6B,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC7E;QACD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC5D,oCAAoC,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAU,EAAE,KAAK,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QAC7G,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,4BAA4B,EAAE,CAAC;QAC/C,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBACnF,MAAM;gBACR,KAAK,CAAC;oBACJ,MAAM,MAAM,GAAG,oCAAoC,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBACpF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;wBAC9B,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;qBACjD;oBACD,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAsD,MAAS;;QACxE,MAAM,OAAO,GAAG,4BAA4B,EAAE,CAAC;QAC/C,OAAO,CAAC,MAAM,GAAG,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC/F,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC,CAAC,MAAM,CACrE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACpB,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;aAC1B;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EACD,EAAE,CACH,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,8CAA8C;IACrD,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,MAAM,oCAAoC,GAAG;IAClD,MAAM,CAAC,OAA6C,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QAC5F,IAAI,OAAO,CAAC,GAAG,KAAK,EAAE,EAAE;YACtB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACvC;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACzC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,8CAA8C,EAAE,CAAC;QACjE,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC9B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChC,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CACT,MAAS;;QAET,MAAM,OAAO,GAAG,8CAA8C,EAAE,CAAC;QACjE,OAAO,CAAC,GAAG,GAAG,MAAA,MAAM,CAAC,GAAG,mCAAI,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,GAAG,MAAA,MAAM,CAAC,KAAK,mCAAI,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,+BAA+B;IACtC,OAAO;QACL,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,EAAE;QACV,eAAe,EAAE,GAAG;QACpB,eAAe,EAAE,GAAG;QACpB,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,GAAG;QAClB,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE,EAAE;QACZ,iBAAiB,EAAE,EAAE;QACrB,WAAW,EAAE,WAAW,CAAC,kBAAkB;QAC3C,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;QACf,gBAAgB,EAAE,EAAE;QACpB,kBAAkB,EAAE,EAAE;QACtB,OAAO,EAAE,GAAG;KACb,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,CAAC,OAA8B,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QAC7E,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE;YACzB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SAC1C;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,GAAG,EAAE;YACnC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SAClD;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,GAAG,EAAE;YACnC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SAClD;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,EAAE,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;SAC9C;QACD,IAAI,OAAO,CAAC,aAAa,KAAK,GAAG,EAAE;YACjC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,EAAE,EAAE;YAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC5C;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,EAAE,EAAE;YAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC5C;QACD,IAAI,OAAO,CAAC,iBAAiB,KAAK,EAAE,EAAE;YACpC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SACrD;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,kBAAkB,EAAE;YAC1D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SACnE;QACD,IAAI,OAAO,CAAC,OAAO,KAAK,EAAE,EAAE;YAC1B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAC3C;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,EAAE,EAAE;YAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,gBAAgB,KAAK,EAAE,EAAE;YACnC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;SACrD;QACD,IAAI,OAAO,CAAC,kBAAkB,KAAK,EAAE,EAAE;YACrC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;SACvD;QACD,IAAI,OAAO,CAAC,OAAO,KAAK,GAAG,EAAE;YAC3B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAC3C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;QAClD,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACjC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBAC/D,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBAC/D,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACrC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBAC7D,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACnC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACnC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC5C,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC1D,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClC,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC3C,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC7C,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBACvD,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAyD,MAAS;;QAC3E,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;QAClD,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,EAAE,CAAC;QACrC,OAAO,CAAC,eAAe,GAAG,MAAA,MAAM,CAAC,eAAe,mCAAI,GAAG,CAAC;QACxD,OAAO,CAAC,eAAe,GAAG,MAAA,MAAM,CAAC,eAAe,mCAAI,GAAG,CAAC;QACxD,OAAO,CAAC,UAAU,GAAG,MAAA,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC;QAC7C,OAAO,CAAC,aAAa,GAAG,MAAA,MAAM,CAAC,aAAa,mCAAI,GAAG,CAAC;QACpD,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,EAAE,CAAC;QACzC,OAAO,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,EAAE,CAAC;QACzC,OAAO,CAAC,iBAAiB,GAAG,MAAA,MAAM,CAAC,iBAAiB,mCAAI,EAAE,CAAC;QAC3D,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,WAAW,CAAC,kBAAkB,CAAC;QAC3E,OAAO,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,EAAE,CAAC;QACvC,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,gBAAgB,GAAG,MAAA,MAAM,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QACzD,OAAO,CAAC,kBAAkB,GAAG,MAAA,MAAM,CAAC,kBAAkB,mCAAI,EAAE,CAAC;QAC7D,OAAO,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,GAAG,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,uBAAuB;IAC9B,OAAO;QACL,EAAE,EAAE,EAAE;QACN,SAAS,EAAE,EAAE;QACb,cAAc,EAAE,SAAS;QACzB,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,KAAK;QAClB,mBAAmB,EAAE,CAAC;QACtB,oBAAoB,EAAE,CAAC;QACvB,qBAAqB,EAAE,CAAC;QACxB,aAAa,EAAE,iBAAiB,CAAC,oBAAoB;QACrD,UAAU,EAAE,cAAc,CAAC,gBAAgB;QAC3C,QAAQ,EAAE,SAAS;QACnB,eAAe,EAAE,EAAE;QACnB,qBAAqB,EAAE,EAAE;QACzB,SAAS,EAAE,KAAK;QAChB,iBAAiB,EAAE,GAAG;QACtB,0BAA0B,EAAE,EAAE;QAC9B,oBAAoB,EAAE,EAAE;QACxB,uBAAuB,EAAE,KAAK;QAC9B,mBAAmB,EAAE,EAAE;QACvB,aAAa,EAAE,EAAE;QACjB,YAAY,EAAE,EAAE;QAChB,wBAAwB,EAAE,KAAK;QAC/B,KAAK,EAAE,EAAE;KACV,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,MAAM,CAAC,OAAsB,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QACrE,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SACtC;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE;YACjC,qBAAqB,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACrE;QACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE;YACxC,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC3F;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI,EAAE;YAChC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAC7C;QACD,IAAI,OAAO,CAAC,mBAAmB,KAAK,CAAC,EAAE;YACrC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;SACtD;QACD,IAAI,OAAO,CAAC,oBAAoB,KAAK,CAAC,EAAE;YACtC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;SACvD;QACD,IAAI,OAAO,CAAC,qBAAqB,KAAK,CAAC,EAAE;YACvC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;SACxD;QACD,IAAI,OAAO,CAAC,aAAa,KAAK,iBAAiB,CAAC,oBAAoB,EAAE;YACpE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;SAC3E;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,cAAc,CAAC,gBAAgB,EAAE;YAC1D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;SACrE;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;YAClC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACnF;QACD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,eAAe,EAAE;YACvC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;SACzC;QACD,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,qBAAqB,EAAE;YAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAE,CAAC,CAAC;SAC/B;QACD,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,EAAE;YAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SAC5C;QACD,IAAI,OAAO,CAAC,iBAAiB,KAAK,GAAG,EAAE;YACrC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SACrD;QACD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,0BAA0B,EAAE;YAClD,MAAM,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC,CAAC,CAAC;SACpD;QACD,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,IAAI,OAAO,CAAC,oBAAoB,KAAK,EAAE,EAAE;YACvC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;SACzD;QACD,IAAI,OAAO,CAAC,uBAAuB,KAAK,IAAI,EAAE;YAC5C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;SAC1D;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,mBAAmB,EAAE;YAC3C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAE,CAAC,CAAC;SAC/B;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,aAAa,EAAE;YACrC,qBAAqB,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACtE;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SACjD;QACD,IAAI,OAAO,CAAC,wBAAwB,KAAK,IAAI,EAAE;YAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;SAC3D;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC1C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC7B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAC9E,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBACjF,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBACpC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,mBAAmB,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;oBAC7C,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,oBAAoB,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;oBAC9C,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,qBAAqB,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;oBAC/C,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,aAAa,GAAG,yBAAyB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAClE,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,UAAU,GAAG,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC5D,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,QAAQ,GAAG,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBACzE,MAAM;gBACR,KAAK,EAAE;oBACL,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;wBACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;wBAC1C,OAAO,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE;4BACxB,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;yBACtE;qBACF;yBAAM;wBACL,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBACtE;oBACD,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBACpD,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBAClC,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBACjE,MAAM;gBACR,KAAK,EAAE;oBACL,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;wBACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;wBAC1C,OAAO,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE;4BACxB,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,iCAAiC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;yBAC5F;qBACF;yBAAM;wBACL,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,iCAAiC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBAC5F;oBACD,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/C,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,uBAAuB,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChD,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBAClD,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAClF,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,wBAAwB,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjD,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChC,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAiD,MAAS;;QACnE,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAC;QAC1C,OAAO,CAAC,EAAE,GAAG,MAAA,MAAM,CAAC,EAAE,mCAAI,EAAE,CAAC;QAC7B,OAAO,CAAC,SAAS,GAAG,CAAA,MAAA,MAAM,CAAC,SAAS,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC7F,OAAO,CAAC,cAAc;YACpB,MAAM,CAAC,cAAc,KAAK,SAAS,IAAI,MAAM,CAAC,cAAc,KAAK,IAAI;gBACnE,CAAC,CAAC,uBAAuB,CAAC,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC;gBAC5D,CAAC,CAAC,SAAS,CAAC;QAChB,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,KAAK,CAAC;QAClD,OAAO,CAAC,mBAAmB,GAAG,MAAA,MAAM,CAAC,mBAAmB,mCAAI,CAAC,CAAC;QAC9D,OAAO,CAAC,oBAAoB,GAAG,MAAA,MAAM,CAAC,oBAAoB,mCAAI,CAAC,CAAC;QAChE,OAAO,CAAC,qBAAqB,GAAG,MAAA,MAAM,CAAC,qBAAqB,mCAAI,CAAC,CAAC;QAClE,OAAO,CAAC,aAAa,GAAG,MAAA,MAAM,CAAC,aAAa,mCAAI,iBAAiB,CAAC,oBAAoB,CAAC;QACvF,OAAO,CAAC,UAAU,GAAG,MAAA,MAAM,CAAC,UAAU,mCAAI,cAAc,CAAC,gBAAgB,CAAC;QAC1E,OAAO,CAAC,QAAQ;YACd,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;gBACvD,CAAC,CAAC,qBAAqB,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;gBACpD,CAAC,CAAC,SAAS,CAAC;QAChB,OAAO,CAAC,eAAe,GAAG,CAAA,MAAA,MAAM,CAAC,eAAe,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QACtE,OAAO,CAAC,qBAAqB,GAAG,CAAA,MAAA,MAAM,CAAC,qBAAqB,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAClF,OAAO,CAAC,SAAS,GAAG,MAAA,MAAM,CAAC,SAAS,mCAAI,KAAK,CAAC;QAC9C,OAAO,CAAC,iBAAiB,GAAG,MAAA,MAAM,CAAC,iBAAiB,mCAAI,GAAG,CAAC;QAC5D,OAAO,CAAC,0BAA0B,GAAG,CAAA,MAAA,MAAM,CAAC,0BAA0B,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC5F,OAAO,CAAC,oBAAoB,GAAG,MAAA,MAAM,CAAC,oBAAoB,mCAAI,EAAE,CAAC;QACjE,OAAO,CAAC,uBAAuB,GAAG,MAAA,MAAM,CAAC,uBAAuB,mCAAI,KAAK,CAAC;QAC1E,OAAO,CAAC,mBAAmB,GAAG,CAAA,MAAA,MAAM,CAAC,mBAAmB,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC9E,OAAO,CAAC,aAAa,GAAG,CAAA,MAAA,MAAM,CAAC,aAAa,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QACrG,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,wBAAwB,GAAG,MAAA,MAAM,CAAC,wBAAwB,mCAAI,KAAK,CAAC;QAC5E,OAAO,CAAC,KAAK,GAAG,MAAA,MAAM,CAAC,KAAK,mCAAI,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,kCAAkC;IACzC,OAAO;QACL,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;QACf,MAAM,EAAE,EAAE;QACV,eAAe,EAAE,GAAG;QACpB,eAAe,EAAE,GAAG;QACpB,UAAU,EAAE,EAAE;QACd,gBAAgB,EAAE,EAAE;QACpB,WAAW,EAAE,WAAW,CAAC,kBAAkB;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,MAAM,CAAC,OAAiC,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QAChF,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACxC;QACD,IAAI,OAAO,CAAC,OAAO,KAAK,EAAE,EAAE;YAC1B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAC3C;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,EAAE,EAAE;YAC9B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAC/C;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE;YACzB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SAC1C;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,GAAG,EAAE;YACnC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SAClD;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,GAAG,EAAE;YACnC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SAClD;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,EAAE,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;SAC9C;QACD,IAAI,OAAO,CAAC,gBAAgB,KAAK,EAAE,EAAE;YACnC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;SACpD;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,kBAAkB,EAAE;YAC1D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SACnE;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,kCAAkC,EAAE,CAAC;QACrD,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACjC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBAC/D,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBAC/D,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBACrC,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC3C,MAAM;gBACR,KAAK,EAAE;oBACL,OAAO,CAAC,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC1D,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAA4D,MAAS;;QAC9E,MAAM,OAAO,GAAG,kCAAkC,EAAE,CAAC;QACrD,OAAO,CAAC,IAAI,GAAG,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;QACjC,OAAO,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,EAAE,CAAC;QACvC,OAAO,CAAC,YAAY,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,EAAE,CAAC;QACjD,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,EAAE,CAAC;QACrC,OAAO,CAAC,eAAe,GAAG,MAAA,MAAM,CAAC,eAAe,mCAAI,GAAG,CAAC;QACxD,OAAO,CAAC,eAAe,GAAG,MAAA,MAAM,CAAC,eAAe,mCAAI,GAAG,CAAC;QACxD,OAAO,CAAC,UAAU,GAAG,MAAA,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC;QAC7C,OAAO,CAAC,gBAAgB,GAAG,MAAA,MAAM,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QACzD,OAAO,CAAC,WAAW,GAAG,MAAA,MAAM,CAAC,WAAW,mCAAI,WAAW,CAAC,kBAAkB,CAAC;QAC3E,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,SAAS,0BAA0B;IACjC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,EAAE,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,MAAM,CAAC,OAAyB,EAAE,SAAqB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QACxE,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SACtC;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE;YAC7B,aAAa,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC7D;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;YAClC,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACtF;QACD,IAAI,OAAO,CAAC,iBAAiB,KAAK,GAAG,EAAE;YACrC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SACpD;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAA8B,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;QAClE,MAAM,OAAO,GAAG,0BAA0B,EAAE,CAAC;QAC7C,OAAO,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACjB,KAAK,CAAC;oBACJ,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC7B,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAClE,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,QAAQ,GAAG,wBAAwB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC5E,MAAM;gBACR,KAAK,CAAC;oBACJ,OAAO,CAAC,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAU,CAAC,CAAC;oBACjE,MAAM;gBACR;oBACE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM;aACT;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAoD,MAAS;;QACtE,MAAM,OAAO,GAAG,0BAA0B,EAAE,CAAC;QAC7C,OAAO,CAAC,EAAE,GAAG,MAAA,MAAM,CAAC,EAAE,mCAAI,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,GAAG,CAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC;QAC7E,OAAO,CAAC,QAAQ;YACd,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;gBACvD,CAAC,CAAC,wBAAwB,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;gBACvD,CAAC,CAAC,SAAS,CAAC;QAChB,OAAO,CAAC,iBAAiB,GAAG,MAAA,MAAM,CAAC,iBAAiB,mCAAI,GAAG,CAAC;QAC5D,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC;AAqBF,SAAS,YAAY,CAAC,IAAU;IAC9B,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;AACzB,CAAC;AAED,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;IAC1B,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,IAAW,CAAC;IAC5B,GAAG,CAAC,SAAS,EAAE,CAAC;CACjB","sourcesContent":["/* eslint-disable */\nimport Long from \"long\";\nimport _m0 from \"protobufjs/minimal\";\n\nexport const protobufPackage = \"snapchat.lenses\";\n\n/** Data interface used by an API endpoint */\nexport enum RemoteApiEndpointType {\n /** TYPE_UNSET - Invalid empty value */\n TYPE_UNSET = \"TYPE_UNSET\",\n /** TEXT - Text-based API, usually JSON */\n TEXT = \"TEXT\",\n /** PROTO - Protobuf-based API, request and response are proto messages */\n PROTO = \"PROTO\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiEndpointTypeFromJSON(object: any): RemoteApiEndpointType {\n switch (object) {\n case 0:\n case \"TYPE_UNSET\":\n return RemoteApiEndpointType.TYPE_UNSET;\n case 1:\n case \"TEXT\":\n return RemoteApiEndpointType.TEXT;\n case 2:\n case \"PROTO\":\n return RemoteApiEndpointType.PROTO;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiEndpointType.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiEndpointTypeToNumber(object: RemoteApiEndpointType): number {\n switch (object) {\n case RemoteApiEndpointType.TYPE_UNSET:\n return 0;\n case RemoteApiEndpointType.TEXT:\n return 1;\n case RemoteApiEndpointType.PROTO:\n return 2;\n default:\n return 0;\n }\n}\n\n/** Defines caching behavior for an endpoint */\nexport enum RemoteApiCacheStrategy {\n /** CS_UNSET - Invalid empty value */\n CS_UNSET = \"CS_UNSET\",\n /** USE_HEADERS - Rely on Cache-control headers */\n USE_HEADERS = \"USE_HEADERS\",\n /** ALWAYS - Always cache */\n ALWAYS = \"ALWAYS\",\n /** NEVER - Never cache */\n NEVER = \"NEVER\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiCacheStrategyFromJSON(object: any): RemoteApiCacheStrategy {\n switch (object) {\n case 0:\n case \"CS_UNSET\":\n return RemoteApiCacheStrategy.CS_UNSET;\n case 1:\n case \"USE_HEADERS\":\n return RemoteApiCacheStrategy.USE_HEADERS;\n case 2:\n case \"ALWAYS\":\n return RemoteApiCacheStrategy.ALWAYS;\n case 3:\n case \"NEVER\":\n return RemoteApiCacheStrategy.NEVER;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiCacheStrategy.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiCacheStrategyToNumber(object: RemoteApiCacheStrategy): number {\n switch (object) {\n case RemoteApiCacheStrategy.CS_UNSET:\n return 0;\n case RemoteApiCacheStrategy.USE_HEADERS:\n return 1;\n case RemoteApiCacheStrategy.ALWAYS:\n return 2;\n case RemoteApiCacheStrategy.NEVER:\n return 3;\n default:\n return 0;\n }\n}\n\n/**\n * Normally, proxy relies on the response Cache-control header to determine cache TTL.\n * When to override 3p API-provided cache TTL with the one specified in the spec\n */\nexport enum RemoteApiCacheTTLStrategy {\n /** CTS_UNSET - Never override TTL from Cache-control header */\n CTS_UNSET = \"CTS_UNSET\",\n /** EXACT - Always use spec-provided TTL, ignore Cache-control header */\n EXACT = \"EXACT\",\n /** FLOOR - Use spec-provided TTL if Cache-control TTL is less */\n FLOOR = \"FLOOR\",\n /** CEILING - Use spec-provided TTL if Cache-control TTL is greater */\n CEILING = \"CEILING\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiCacheTTLStrategyFromJSON(object: any): RemoteApiCacheTTLStrategy {\n switch (object) {\n case 0:\n case \"CTS_UNSET\":\n return RemoteApiCacheTTLStrategy.CTS_UNSET;\n case 1:\n case \"EXACT\":\n return RemoteApiCacheTTLStrategy.EXACT;\n case 2:\n case \"FLOOR\":\n return RemoteApiCacheTTLStrategy.FLOOR;\n case 3:\n case \"CEILING\":\n return RemoteApiCacheTTLStrategy.CEILING;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiCacheTTLStrategy.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiCacheTTLStrategyToNumber(object: RemoteApiCacheTTLStrategy): number {\n switch (object) {\n case RemoteApiCacheTTLStrategy.CTS_UNSET:\n return 0;\n case RemoteApiCacheTTLStrategy.EXACT:\n return 1;\n case RemoteApiCacheTTLStrategy.FLOOR:\n return 2;\n case RemoteApiCacheTTLStrategy.CEILING:\n return 3;\n default:\n return 0;\n }\n}\n\n/** Options in HTTP request to run through ALD (Abuse Language Detection) */\nexport enum AldRequestValidationConfig {\n /** ALD_REQ_CONFIG_UNSET - Unset */\n ALD_REQ_CONFIG_UNSET = \"ALD_REQ_CONFIG_UNSET\",\n /** REQ_BODY - Request Body */\n REQ_BODY = \"REQ_BODY\",\n /** REQ_URL - Request URL */\n REQ_URL = \"REQ_URL\",\n /** REQ_HEADERS - Request headers */\n REQ_HEADERS = \"REQ_HEADERS\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function aldRequestValidationConfigFromJSON(object: any): AldRequestValidationConfig {\n switch (object) {\n case 0:\n case \"ALD_REQ_CONFIG_UNSET\":\n return AldRequestValidationConfig.ALD_REQ_CONFIG_UNSET;\n case 1:\n case \"REQ_BODY\":\n return AldRequestValidationConfig.REQ_BODY;\n case 2:\n case \"REQ_URL\":\n return AldRequestValidationConfig.REQ_URL;\n case 3:\n case \"REQ_HEADERS\":\n return AldRequestValidationConfig.REQ_HEADERS;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return AldRequestValidationConfig.UNRECOGNIZED;\n }\n}\n\nexport function aldRequestValidationConfigToNumber(object: AldRequestValidationConfig): number {\n switch (object) {\n case AldRequestValidationConfig.ALD_REQ_CONFIG_UNSET:\n return 0;\n case AldRequestValidationConfig.REQ_BODY:\n return 1;\n case AldRequestValidationConfig.REQ_URL:\n return 2;\n case AldRequestValidationConfig.REQ_HEADERS:\n return 3;\n default:\n return 0;\n }\n}\n\n/** Options in HTTP response to run through ALD (Abuse Language Detection) */\nexport enum AldResponseValidationConfig {\n /** ALD_RESP_CONFIG_UNSET - Unset */\n ALD_RESP_CONFIG_UNSET = \"ALD_RESP_CONFIG_UNSET\",\n /** RESP_BODY - Response Body */\n RESP_BODY = \"RESP_BODY\",\n /** RESP_HEADERS - Response headers */\n RESP_HEADERS = \"RESP_HEADERS\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function aldResponseValidationConfigFromJSON(object: any): AldResponseValidationConfig {\n switch (object) {\n case 0:\n case \"ALD_RESP_CONFIG_UNSET\":\n return AldResponseValidationConfig.ALD_RESP_CONFIG_UNSET;\n case 1:\n case \"RESP_BODY\":\n return AldResponseValidationConfig.RESP_BODY;\n case 2:\n case \"RESP_HEADERS\":\n return AldResponseValidationConfig.RESP_HEADERS;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return AldResponseValidationConfig.UNRECOGNIZED;\n }\n}\n\nexport function aldResponseValidationConfigToNumber(object: AldResponseValidationConfig): number {\n switch (object) {\n case AldResponseValidationConfig.ALD_RESP_CONFIG_UNSET:\n return 0;\n case AldResponseValidationConfig.RESP_BODY:\n return 1;\n case AldResponseValidationConfig.RESP_HEADERS:\n return 2;\n default:\n return 0;\n }\n}\n\n/**\n * Approval state of an API spec\n * See more: https://docs.google.com/document/d/1uNuHwRT6a5_XBNQ1gZGNpdNVUEaTTCYkMFtnj7r3Z24/edit?usp=sharing\n */\nexport enum SpecApprovalState {\n /** APPROVAL_STATE_UNSET - Invalid value */\n APPROVAL_STATE_UNSET = \"APPROVAL_STATE_UNSET\",\n /** IN_REVIEW - In review */\n IN_REVIEW = \"IN_REVIEW\",\n /** APPROVED - Approved */\n APPROVED = \"APPROVED\",\n /** BLOCKED - Blocked */\n BLOCKED = \"BLOCKED\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function specApprovalStateFromJSON(object: any): SpecApprovalState {\n switch (object) {\n case 0:\n case \"APPROVAL_STATE_UNSET\":\n return SpecApprovalState.APPROVAL_STATE_UNSET;\n case 1:\n case \"IN_REVIEW\":\n return SpecApprovalState.IN_REVIEW;\n case 2:\n case \"APPROVED\":\n return SpecApprovalState.APPROVED;\n case 3:\n case \"BLOCKED\":\n return SpecApprovalState.BLOCKED;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return SpecApprovalState.UNRECOGNIZED;\n }\n}\n\nexport function specApprovalStateToNumber(object: SpecApprovalState): number {\n switch (object) {\n case SpecApprovalState.APPROVAL_STATE_UNSET:\n return 0;\n case SpecApprovalState.IN_REVIEW:\n return 1;\n case SpecApprovalState.APPROVED:\n return 2;\n case SpecApprovalState.BLOCKED:\n return 3;\n default:\n return 0;\n }\n}\n\n/** Who should be able to see/use the spec */\nexport enum SpecVisibility {\n /** VISIBILITY_UNSET - Invalid value */\n VISIBILITY_UNSET = \"VISIBILITY_UNSET\",\n /**\n * INTERNAL - Only internal Lens Studio versions\n *\n * @deprecated\n */\n INTERNAL = \"INTERNAL\",\n /** PRIVATE - Only the spec creator and those on allowlist */\n PRIVATE = \"PRIVATE\",\n /** EXTERNAL - Accessible to everyone */\n EXTERNAL = \"EXTERNAL\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function specVisibilityFromJSON(object: any): SpecVisibility {\n switch (object) {\n case 0:\n case \"VISIBILITY_UNSET\":\n return SpecVisibility.VISIBILITY_UNSET;\n case 1:\n case \"INTERNAL\":\n return SpecVisibility.INTERNAL;\n case 2:\n case \"PRIVATE\":\n return SpecVisibility.PRIVATE;\n case 3:\n case \"EXTERNAL\":\n return SpecVisibility.EXTERNAL;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return SpecVisibility.UNRECOGNIZED;\n }\n}\n\nexport function specVisibilityToNumber(object: SpecVisibility): number {\n switch (object) {\n case SpecVisibility.VISIBILITY_UNSET:\n return 0;\n case SpecVisibility.INTERNAL:\n return 1;\n case SpecVisibility.PRIVATE:\n return 2;\n case SpecVisibility.EXTERNAL:\n return 3;\n default:\n return 0;\n }\n}\n\n/**\n * Where was this api created from; in the future we may end up with\n * different behavior for Specs created from different properties\n */\nexport enum CreatedFrom {\n /** CREATED_FROM_UNSET - Invalid value */\n CREATED_FROM_UNSET = \"CREATED_FROM_UNSET\",\n /** REMOTE_API_ADMIN - This was created on Remote-Api-Admin by an internal team member */\n REMOTE_API_ADMIN = \"REMOTE_API_ADMIN\",\n /** MY_LENSES - This was created on My-Lenses by an external team member */\n MY_LENSES = \"MY_LENSES\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function createdFromFromJSON(object: any): CreatedFrom {\n switch (object) {\n case 0:\n case \"CREATED_FROM_UNSET\":\n return CreatedFrom.CREATED_FROM_UNSET;\n case 1:\n case \"REMOTE_API_ADMIN\":\n return CreatedFrom.REMOTE_API_ADMIN;\n case 2:\n case \"MY_LENSES\":\n return CreatedFrom.MY_LENSES;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return CreatedFrom.UNRECOGNIZED;\n }\n}\n\nexport function createdFromToNumber(object: CreatedFrom): number {\n switch (object) {\n case CreatedFrom.CREATED_FROM_UNSET:\n return 0;\n case CreatedFrom.REMOTE_API_ADMIN:\n return 1;\n case CreatedFrom.MY_LENSES:\n return 2;\n default:\n return 0;\n }\n}\n\n/** What platform this spec is targeting */\nexport enum TargetPlatform {\n /** TARGET_PLATFORM_UNSET - Invalid value */\n TARGET_PLATFORM_UNSET = \"TARGET_PLATFORM_UNSET\",\n /** SNAPCHAT - Accessible to lenses on Snapchat */\n SNAPCHAT = \"SNAPCHAT\",\n /** SPECTACLES - Accessible to lenses on Spectacles */\n SPECTACLES = \"SPECTACLES\",\n /** CAMERA_KIT - Accessible to CameraKit */\n CAMERA_KIT = \"CAMERA_KIT\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function targetPlatformFromJSON(object: any): TargetPlatform {\n switch (object) {\n case 0:\n case \"TARGET_PLATFORM_UNSET\":\n return TargetPlatform.TARGET_PLATFORM_UNSET;\n case 1:\n case \"SNAPCHAT\":\n return TargetPlatform.SNAPCHAT;\n case 2:\n case \"SPECTACLES\":\n return TargetPlatform.SPECTACLES;\n case 3:\n case \"CAMERA_KIT\":\n return TargetPlatform.CAMERA_KIT;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return TargetPlatform.UNRECOGNIZED;\n }\n}\n\nexport function targetPlatformToNumber(object: TargetPlatform): number {\n switch (object) {\n case TargetPlatform.TARGET_PLATFORM_UNSET:\n return 0;\n case TargetPlatform.SNAPCHAT:\n return 1;\n case TargetPlatform.SPECTACLES:\n return 2;\n case TargetPlatform.CAMERA_KIT:\n return 3;\n default:\n return 0;\n }\n}\n\n/** Defines which api access level the lens has: https://snapchat.quip.com/RS86Adtd8lZI */\nexport enum RestrictedJsApiPermission {\n /** PERMISSION_UNSET - Invalid value */\n PERMISSION_UNSET = \"PERMISSION_UNSET\",\n /** USER_DATA - Lenses that use this API can access user data */\n USER_DATA = \"USER_DATA\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function restrictedJsApiPermissionFromJSON(object: any): RestrictedJsApiPermission {\n switch (object) {\n case 0:\n case \"PERMISSION_UNSET\":\n return RestrictedJsApiPermission.PERMISSION_UNSET;\n case 1:\n case \"USER_DATA\":\n return RestrictedJsApiPermission.USER_DATA;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RestrictedJsApiPermission.UNRECOGNIZED;\n }\n}\n\nexport function restrictedJsApiPermissionToNumber(object: RestrictedJsApiPermission): number {\n switch (object) {\n case RestrictedJsApiPermission.PERMISSION_UNSET:\n return 0;\n case RestrictedJsApiPermission.USER_DATA:\n return 1;\n default:\n return 0;\n }\n}\n\n/** (only for internal API endpoints) Possible use cases for user location */\nexport enum UserLocationUseCase {\n /** USE_CASE_UNSET - Undefined use case */\n USE_CASE_UNSET = \"USE_CASE_UNSET\",\n /** WEATHER - Weather info in user area (zoom level 10) */\n WEATHER = \"WEATHER\",\n /** PLACES - Finding nearby places (zoom level 18) */\n PLACES = \"PLACES\",\n /** PLACES_COARSE - Finding nearby places at a more coarse level (zoom level 17) */\n PLACES_COARSE = \"PLACES_COARSE\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function userLocationUseCaseFromJSON(object: any): UserLocationUseCase {\n switch (object) {\n case 0:\n case \"USE_CASE_UNSET\":\n return UserLocationUseCase.USE_CASE_UNSET;\n case 1:\n case \"WEATHER\":\n return UserLocationUseCase.WEATHER;\n case 2:\n case \"PLACES\":\n return UserLocationUseCase.PLACES;\n case 3:\n case \"PLACES_COARSE\":\n return UserLocationUseCase.PLACES_COARSE;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return UserLocationUseCase.UNRECOGNIZED;\n }\n}\n\nexport function userLocationUseCaseToNumber(object: UserLocationUseCase): number {\n switch (object) {\n case UserLocationUseCase.USE_CASE_UNSET:\n return 0;\n case UserLocationUseCase.WEATHER:\n return 1;\n case UserLocationUseCase.PLACES:\n return 2;\n case UserLocationUseCase.PLACES_COARSE:\n return 3;\n default:\n return 0;\n }\n}\n\n/** Defines how a parameter is injected into an HTTP request */\nexport interface RemoteApiHttpRequestParameter {\n /** Unique name of the parameter */\n name: string;\n /** Location of the parameter */\n location: RemoteApiHttpRequestParameter_ParameterLocation;\n /** Is parameter optional */\n optional: boolean;\n /**\n * (optional) Name of the parameter that will be used to construct the request (in query/headers/path).\n * `name` is used by clients to fill in the parameters in the request, whereas\n * `external_name` is what is used in the outgoing API request by the proxy.\n * If empty, `external_name` is assumed to be the same as `name`.\n */\n externalName: string;\n /**\n * Default value if the parameter is not set. Useful for \"standard\" headers like content-type\n * and other similar cases. If a default value is provided, the parameter will be sent with every request.\n * Required for constant parameters.\n */\n defaultValue: string;\n /**\n * Constant parameters have the same predefined value for all requests and\n * are always set by the proxy. Not allowed to be overridden by the caller.\n */\n constant: boolean;\n}\n\n/** Possible location of a parameter */\nexport enum RemoteApiHttpRequestParameter_ParameterLocation {\n /** LOCATION_UNSET - Undefined location */\n LOCATION_UNSET = \"LOCATION_UNSET\",\n /** QUERY - Parameters that appear in the URL query */\n QUERY = \"QUERY\",\n /** HEADER - Parameters that appear in the HTTP request header */\n HEADER = \"HEADER\",\n /** PATH - Parameters that appear in the URL path (for parameterized path only) */\n PATH = \"PATH\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiHttpRequestParameter_ParameterLocationFromJSON(\n object: any\n): RemoteApiHttpRequestParameter_ParameterLocation {\n switch (object) {\n case 0:\n case \"LOCATION_UNSET\":\n return RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET;\n case 1:\n case \"QUERY\":\n return RemoteApiHttpRequestParameter_ParameterLocation.QUERY;\n case 2:\n case \"HEADER\":\n return RemoteApiHttpRequestParameter_ParameterLocation.HEADER;\n case 3:\n case \"PATH\":\n return RemoteApiHttpRequestParameter_ParameterLocation.PATH;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiHttpRequestParameter_ParameterLocation.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiHttpRequestParameter_ParameterLocationToNumber(\n object: RemoteApiHttpRequestParameter_ParameterLocation\n): number {\n switch (object) {\n case RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET:\n return 0;\n case RemoteApiHttpRequestParameter_ParameterLocation.QUERY:\n return 1;\n case RemoteApiHttpRequestParameter_ParameterLocation.HEADER:\n return 2;\n case RemoteApiHttpRequestParameter_ParameterLocation.PATH:\n return 3;\n default:\n return 0;\n }\n}\n\n/** (only for PROTO endpoints) Represents names of fields in a proto response, as well as an optional macro value */\nexport interface RemoteApiHttpResponseParameter {\n /** Unique name of the parameter */\n name: string;\n /** Whether or not we want to expose this parameter in the final API response to user */\n hidden: boolean;\n /** Specific macro values indicate certain parameters and types that we want to map this proto field to. */\n macroValue: string;\n}\n\n/** Metadata for remote API endpoints */\nexport interface RemoteApiEndpointMetadata {\n /** Human-readable name for the endpoint */\n name: string;\n /** Description that may include links to documentation, etc. */\n description: string;\n}\n\n/** Determines how the proxy should cache third party responses */\nexport interface RemoteApiCachingConfig {\n /** When to cache */\n cacheStrategy: RemoteApiCacheStrategy;\n /** Which TTL to use when caching */\n ttlStrategy: RemoteApiCacheTTLStrategy;\n /** Custom TTL override value */\n ttlSec: string;\n}\n\n/** Defines a remote API HTTP endpoint */\nexport interface RemoteApiHttpEndpoint {\n /** URL path of the endpoint; could be fixed or parameterized */\n path: string;\n /** HTTP methods allowed for requests to this endpoint */\n methods: RemoteApiHttpEndpoint_HttpRequestMethod[];\n /** Parameters allowed for requests to this endpoint; required if path is parameterized */\n parameters: RemoteApiHttpRequestParameter[];\n /** Metadata */\n metadata: RemoteApiEndpointMetadata | undefined;\n /** ID used by clients to refer to this endpoint */\n refId: string;\n /** Type of the endpoint */\n type: RemoteApiEndpointType;\n /** Serialized protobuf descriptor containing request and response types */\n protoDescriptor: Uint8Array;\n /** (only for PROTO endpoints) Request proto message type name */\n requestType: string;\n /** (only for PROTO endpoints) Response proto message type name */\n responseType: string;\n /** (only for internal API endpoints) Whether the API uses internal proxy to get user location */\n usesLocationProxy: boolean;\n /** Caching config */\n cachingConfig: RemoteApiCachingConfig | undefined;\n /** (only for internal API endpoints) User location use case */\n userLocationUseCase: UserLocationUseCase;\n /** Endpoint documentation link (optional) */\n documentationLink: string;\n /** Endpoint use case description (optional) */\n description: string;\n /** (only for PROTO endpoints) Used to configure visibility/macros of response proto fields */\n responseParameters: RemoteApiHttpResponseParameter[];\n /**\n * Validate body through Abuse Language Detection service before making request\n *\n * @deprecated\n */\n reqAldRequestValidation: boolean;\n /**\n * Validate body through Abuse Language Detection service before returning response\n *\n * @deprecated\n */\n reqAldResponseValidation: boolean;\n /** Which ALD context window to use for validation */\n aldContextWindow: string;\n /** Which types of content in the request to run through ALD */\n aldRequestConfigs: AldRequestValidationConfig[];\n /** Which types of content in the response to run through ALD */\n aldResponseConfigs: AldResponseValidationConfig[];\n}\n\n/** Possible HTTP request method on an endpoint */\nexport enum RemoteApiHttpEndpoint_HttpRequestMethod {\n /** METHOD_UNSET - Undefined method */\n METHOD_UNSET = \"METHOD_UNSET\",\n /** GET - HTTP GET */\n GET = \"GET\",\n /** POST - HTTP POST */\n POST = \"POST\",\n /** PUT - HTTP PUT */\n PUT = \"PUT\",\n /** DELETE - HTTP DELETE */\n DELETE = \"DELETE\",\n /** PATCH - HTTP PATCH */\n PATCH = \"PATCH\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiHttpEndpoint_HttpRequestMethodFromJSON(object: any): RemoteApiHttpEndpoint_HttpRequestMethod {\n switch (object) {\n case 0:\n case \"METHOD_UNSET\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.METHOD_UNSET;\n case 1:\n case \"GET\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.GET;\n case 2:\n case \"POST\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.POST;\n case 3:\n case \"PUT\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.PUT;\n case 4:\n case \"DELETE\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.DELETE;\n case 5:\n case \"PATCH\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.PATCH;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiHttpEndpoint_HttpRequestMethod.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiHttpEndpoint_HttpRequestMethodToNumber(\n object: RemoteApiHttpEndpoint_HttpRequestMethod\n): number {\n switch (object) {\n case RemoteApiHttpEndpoint_HttpRequestMethod.METHOD_UNSET:\n return 0;\n case RemoteApiHttpEndpoint_HttpRequestMethod.GET:\n return 1;\n case RemoteApiHttpEndpoint_HttpRequestMethod.POST:\n return 2;\n case RemoteApiHttpEndpoint_HttpRequestMethod.PUT:\n return 3;\n case RemoteApiHttpEndpoint_HttpRequestMethod.DELETE:\n return 4;\n case RemoteApiHttpEndpoint_HttpRequestMethod.PATCH:\n return 5;\n default:\n return 0;\n }\n}\n\n/** Defines a remote API gRPC endpoint */\nexport interface RemoteApiGrpcEndpoint {\n /** Symbol of target method in the format of package.service.method */\n methodSymbol: string;\n /** ID used by clients to refer to this endpoint */\n refId: string;\n /** Request proto message type name */\n requestType: string;\n /** Response proto message type name */\n responseType: string;\n /** (only for internal API endpoints) Whether the API uses internal proxy to get user location */\n usesLocationProxy: boolean;\n /** (only for internal API endpoints) User location use case */\n userLocationUseCase: UserLocationUseCase;\n /** Endpoint documentation link (optional) */\n documentationLink: string;\n /** Endpoint use case description (optional) */\n description: string;\n /** Used to configure visibility/macros of response proto fields */\n responseParameters: RemoteApiGrpcResponseParameter[];\n /** Serialized protobuf descriptor containing request and response types */\n protoDescriptor: Uint8Array;\n /** Request parameters for this gRPC endpoint (used to configure macros/optional fields) */\n requestParameters: RemoteApiGrpcRequestParameter[];\n}\n\n/** Represents names of fields in a proto response, as well as an optional macro value */\nexport interface RemoteApiGrpcResponseParameter {\n /** Unique name of the parameter */\n name: string;\n /** Whether or not we want to expose this parameter in the final API response to user */\n hidden: boolean;\n /** Specific macro values indicate certain parameters and types that we want to map this proto field to. */\n macroValue: string;\n}\n\n/** Defines how a parameter is injected into an gRPC request */\nexport interface RemoteApiGrpcRequestParameter {\n /** Unique name of the parameter */\n name: string;\n /** Is parameter optional */\n optional: boolean;\n /**\n * Default value if the parameter is not set. Useful for \"standard\" headers like content-type\n * and other similar cases. If a default value is provided, the parameter will be sent with every request.\n * Required for constant parameters.\n */\n defaultValue: string;\n /**\n * Constant parameters have the same predefined value for all requests and\n * are always set by the proxy. Not allowed to be overridden by the caller.\n */\n constant: boolean;\n}\n\n/** Defines OAuth2-related configuration for a remote API */\nexport interface RemoteApiOAuth2Config {\n /** OAuth2 client identifier: https://tools.ietf.org/html/rfc6749#section-2.2 */\n clientId: string;\n /** OAuth2 grant type required for the remote API */\n grantType: RemoteApiOAuth2Config_GrantType;\n /** https://tools.ietf.org/html/rfc6749#section-3.1 */\n authorizationUrl: string;\n /** https://tools.ietf.org/html/rfc6749#section-3.2 */\n tokenUrl: string;\n /** https://tools.ietf.org/html/rfc6749#section-3.3 */\n scope: string;\n /** https://datatracker.ietf.org/doc/html/rfc6749#section-2.3.1 */\n clientSecret: string;\n}\n\n/** OAuth2 grant types supported by the remote-service feature */\nexport enum RemoteApiOAuth2Config_GrantType {\n /** GRANT_TYPE_UNSET - Undefined grant type */\n GRANT_TYPE_UNSET = \"GRANT_TYPE_UNSET\",\n /** AUTHORIZATION_CODE - https://datatracker.ietf.org/doc/html/rfc6749#section-4.1 */\n AUTHORIZATION_CODE = \"AUTHORIZATION_CODE\",\n /** AUTHORIZATION_CODE_WITH_PKCE - https://tools.ietf.org/html/rfc7636 */\n AUTHORIZATION_CODE_WITH_PKCE = \"AUTHORIZATION_CODE_WITH_PKCE\",\n /** IMPLICIT - https://tools.ietf.org/html/rfc6749#section-4.2 */\n IMPLICIT = \"IMPLICIT\",\n /** CLIENT_CREDENTIALS - https://tools.ietf.org/html/rfc6749#section-4.4 */\n CLIENT_CREDENTIALS = \"CLIENT_CREDENTIALS\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiOAuth2Config_GrantTypeFromJSON(object: any): RemoteApiOAuth2Config_GrantType {\n switch (object) {\n case 0:\n case \"GRANT_TYPE_UNSET\":\n return RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET;\n case 1:\n case \"AUTHORIZATION_CODE\":\n return RemoteApiOAuth2Config_GrantType.AUTHORIZATION_CODE;\n case 2:\n case \"AUTHORIZATION_CODE_WITH_PKCE\":\n return RemoteApiOAuth2Config_GrantType.AUTHORIZATION_CODE_WITH_PKCE;\n case 3:\n case \"IMPLICIT\":\n return RemoteApiOAuth2Config_GrantType.IMPLICIT;\n case 4:\n case \"CLIENT_CREDENTIALS\":\n return RemoteApiOAuth2Config_GrantType.CLIENT_CREDENTIALS;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiOAuth2Config_GrantType.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiOAuth2Config_GrantTypeToNumber(object: RemoteApiOAuth2Config_GrantType): number {\n switch (object) {\n case RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET:\n return 0;\n case RemoteApiOAuth2Config_GrantType.AUTHORIZATION_CODE:\n return 1;\n case RemoteApiOAuth2Config_GrantType.AUTHORIZATION_CODE_WITH_PKCE:\n return 2;\n case RemoteApiOAuth2Config_GrantType.IMPLICIT:\n return 3;\n case RemoteApiOAuth2Config_GrantType.CLIENT_CREDENTIALS:\n return 4;\n default:\n return 0;\n }\n}\n\n/** Defines security-related configuration of a remote API */\nexport interface RemoteApiSecurityConfig {\n /** Security scheme of the remote API */\n securityScheme: RemoteApiSecurityConfig_SecurityScheme;\n configs?:\n | { $case: \"apiKeyParam\"; apiKeyParam: RemoteApiHttpRequestParameter }\n | { $case: \"oauth2Config\"; oauth2Config: RemoteApiOAuth2Config }\n | { $case: \"apiKeyConfig\"; apiKeyConfig: RemoteApiKeyConfig };\n}\n\n/** Possible security schemes for a remote API */\nexport enum RemoteApiSecurityConfig_SecurityScheme {\n /** SCHEME_UNSET - Undefined scheme */\n SCHEME_UNSET = \"SCHEME_UNSET\",\n /** NONE - No authentication is required */\n NONE = \"NONE\",\n /** SNAP_TOKEN - Internal snap services using snap token */\n SNAP_TOKEN = \"SNAP_TOKEN\",\n /** API_KEY - API that requires an api key */\n API_KEY = \"API_KEY\",\n /** OAUTH2 - API that requires OAuth2 */\n OAUTH2 = \"OAUTH2\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiSecurityConfig_SecuritySchemeFromJSON(object: any): RemoteApiSecurityConfig_SecurityScheme {\n switch (object) {\n case 0:\n case \"SCHEME_UNSET\":\n return RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET;\n case 1:\n case \"NONE\":\n return RemoteApiSecurityConfig_SecurityScheme.NONE;\n case 2:\n case \"SNAP_TOKEN\":\n return RemoteApiSecurityConfig_SecurityScheme.SNAP_TOKEN;\n case 3:\n case \"API_KEY\":\n return RemoteApiSecurityConfig_SecurityScheme.API_KEY;\n case 4:\n case \"OAUTH2\":\n return RemoteApiSecurityConfig_SecurityScheme.OAUTH2;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiSecurityConfig_SecurityScheme.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiSecurityConfig_SecuritySchemeToNumber(object: RemoteApiSecurityConfig_SecurityScheme): number {\n switch (object) {\n case RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET:\n return 0;\n case RemoteApiSecurityConfig_SecurityScheme.NONE:\n return 1;\n case RemoteApiSecurityConfig_SecurityScheme.SNAP_TOKEN:\n return 2;\n case RemoteApiSecurityConfig_SecurityScheme.API_KEY:\n return 3;\n case RemoteApiSecurityConfig_SecurityScheme.OAUTH2:\n return 4;\n default:\n return 0;\n }\n}\n\n/** Defines an API key-based security config */\nexport interface RemoteApiKeyConfig {\n /** Parameters through which secrets are provided to the API */\n params: RemoteApiHttpRequestParameter[];\n /** Secret values fetched from storage, keyed by param name */\n secretValues: { [key: string]: string };\n}\n\nexport interface RemoteApiKeyConfig_SecretValuesEntry {\n key: string;\n value: string;\n}\n\n/** Remote API spec metadata for internal usage */\nexport interface RemoteApiSpecMetadata {\n /** Human-readable name of the spec */\n name: string;\n /** Who created the spec (email) */\n author: string;\n /** When the spec was created (UTC timestamp) */\n creationTimeSec: string;\n /** When the spec was last edited (UTC timestamp) */\n lastEditTimeSec: string;\n /** Who last edited the spec (email) */\n lastEditor: string;\n /** When the spec was last reviewed (UTC timestamp) */\n reviewTimeSec: string;\n /** Who last reviewed the spec (email) */\n reviewer: string;\n /**\n * ID of the secret that contains they API key(s) or other authentication data\n * in Spookey or another secret storage\n */\n secretId: string;\n /** ID of the API spec, from which this one was derived (if any) */\n derivedFromSpecId: string;\n /** Where was this API spec created from */\n createdFrom: CreatedFrom;\n /** URL containing the icon of the API (e.g. in Bolt) */\n iconUrl: string;\n /** Company or person providing the API */\n providerName: string;\n /** Textual description for the API that may include links to documentation, etc. */\n description: string;\n /** Link to API documentation */\n documentationUrl: string;\n /** Link to internal quip documenting the API */\n internalApiQuipUrl: string;\n /** Spec version */\n version: string;\n}\n\n/** Defines a remote service with a list of endpoints and a single security configuration */\nexport interface RemoteApiSpec {\n /** ID of the API spec */\n id: string;\n /** List of HTTP endpoints allowed by this API spec */\n endpoints: RemoteApiHttpEndpoint[];\n /** Security configuration of this API spec */\n securityConfig: RemoteApiSecurityConfig | undefined;\n /** Hostname or hostname and port in format of host:port */\n host: string;\n /** Defines if secured connection (HTTPS) must be forced */\n tlsRequired: boolean;\n /** Specifies caller's max request size in bytes for any of defined endpoints (optional value) */\n maxRequestSizeBytes: number;\n /** Specifies calle's max response size in bytes for any of defined endpoints (optional value) */\n maxResponseSizeBytes: number;\n /** Specifies calle's max response time in millis for any of defined endpoints (optional value) */\n maxResponseTimeMillis: number;\n /** Approval state of the spec */\n approvalState: SpecApprovalState;\n /** Visibility of the spec */\n visibility: SpecVisibility;\n /** Metadata */\n metadata: RemoteApiSpecMetadata | undefined;\n /** Target platform of the spec */\n targetPlatforms: TargetPlatform[];\n /** List of user IDs that are given visibility to a spec (optional value) */\n customVisibilityUsers: string[];\n /** Whether or not this API actually goes through the remote-api service vs a local client handler (camera kit for example) */\n localOnly: boolean;\n /** Approximate (within 1d) time that the spec was last accessed (UTC timestamp) */\n lastAccessTimeSec: string;\n /** List of permissions. Empty list indicates no permission is granted. */\n restrictedJsApiPermissions: RestrictedJsApiPermission[];\n /** Minimum Lens Studio version that this spec will be shown in. (e.g. \"4.10.0.0\") */\n minLensStudioVersion: string;\n /** Whether or not this spec is restricted from being used in a sponsored lens */\n sponsoredLensRestricted: boolean;\n /** List of user IDs that are given edit permissions to a spec (optional value) */\n editPermissionUsers: string[];\n /** List of gRPC endpoints allowed by this API spec */\n grpcEndpoints: RemoteApiGrpcEndpoint[];\n /** (CameraKit Only) Snap Kit app ID is a metadata field that associates the spec with camera kit app */\n snapkitAppId: string;\n /** (CameraKit Only) - Whether this API uses the Camera Kit built-in local processor or the processor provided by a Camera Kit partner */\n useBuiltinLocalProcessor: boolean;\n /** An id of organization who own the spec */\n orgId: string;\n}\n\n/** [Deprecated] Remote API spec set metadata for internal usage (services within Snap) */\nexport interface RemoteApiSpecSetMetadata {\n /** Human-readable name of the API (e.g. \"Weather API\") */\n name: string;\n /** URL containing the icon of the API (e.g. in Bolt) */\n iconUrl: string;\n /** Company or person providing the API */\n providerName: string;\n /** Textual description for the API that may include links to documentation, etc. */\n description: string;\n /** Who created the spec set (email) */\n author: string;\n /** When the spec set was created (UTC timestamp) */\n creationTimeSec: string;\n /** When the spec set was last edited (UTC timestamp) */\n lastEditTimeSec: string;\n /** Who last edited the spec set (email) */\n lastEditor: string;\n /** Link to API documentation */\n documentationUrl: string;\n /** Where was this API spec created from */\n createdFrom: CreatedFrom;\n}\n\n/** [Deprecated] Defines a remote API as a collection of services that are meant to be used together */\nexport interface RemoteApiSpecSet {\n /** ID of the spec set */\n id: string;\n /** Service specifications */\n specs: RemoteApiSpec[];\n /** Metadata */\n metadata: RemoteApiSpecSetMetadata | undefined;\n /** Approximate (within 1d) time that the spec was last accessed (UTC timestamp) */\n lastAccessTimeSec: string;\n}\n\nfunction createBaseRemoteApiHttpRequestParameter(): RemoteApiHttpRequestParameter {\n return {\n name: \"\",\n location: RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET,\n optional: false,\n externalName: \"\",\n defaultValue: \"\",\n constant: false,\n };\n}\n\nexport const RemoteApiHttpRequestParameter = {\n encode(message: RemoteApiHttpRequestParameter, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.location !== RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET) {\n writer.uint32(16).int32(remoteApiHttpRequestParameter_ParameterLocationToNumber(message.location));\n }\n if (message.optional === true) {\n writer.uint32(24).bool(message.optional);\n }\n if (message.externalName !== \"\") {\n writer.uint32(34).string(message.externalName);\n }\n if (message.defaultValue !== \"\") {\n writer.uint32(42).string(message.defaultValue);\n }\n if (message.constant === true) {\n writer.uint32(48).bool(message.constant);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiHttpRequestParameter {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiHttpRequestParameter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.name = reader.string();\n break;\n case 2:\n message.location = remoteApiHttpRequestParameter_ParameterLocationFromJSON(reader.int32());\n break;\n case 3:\n message.optional = reader.bool();\n break;\n case 4:\n message.externalName = reader.string();\n break;\n case 5:\n message.defaultValue = reader.string();\n break;\n case 6:\n message.constant = reader.bool();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiHttpRequestParameter>, I>>(\n object: I\n ): RemoteApiHttpRequestParameter {\n const message = createBaseRemoteApiHttpRequestParameter();\n message.name = object.name ?? \"\";\n message.location = object.location ?? RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET;\n message.optional = object.optional ?? false;\n message.externalName = object.externalName ?? \"\";\n message.defaultValue = object.defaultValue ?? \"\";\n message.constant = object.constant ?? false;\n return message;\n },\n};\n\nfunction createBaseRemoteApiHttpResponseParameter(): RemoteApiHttpResponseParameter {\n return { name: \"\", hidden: false, macroValue: \"\" };\n}\n\nexport const RemoteApiHttpResponseParameter = {\n encode(message: RemoteApiHttpResponseParameter, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.hidden === true) {\n writer.uint32(16).bool(message.hidden);\n }\n if (message.macroValue !== \"\") {\n writer.uint32(26).string(message.macroValue);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiHttpResponseParameter {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiHttpResponseParameter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.name = reader.string();\n break;\n case 2:\n message.hidden = reader.bool();\n break;\n case 3:\n message.macroValue = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiHttpResponseParameter>, I>>(\n object: I\n ): RemoteApiHttpResponseParameter {\n const message = createBaseRemoteApiHttpResponseParameter();\n message.name = object.name ?? \"\";\n message.hidden = object.hidden ?? false;\n message.macroValue = object.macroValue ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiEndpointMetadata(): RemoteApiEndpointMetadata {\n return { name: \"\", description: \"\" };\n}\n\nexport const RemoteApiEndpointMetadata = {\n encode(message: RemoteApiEndpointMetadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.description !== \"\") {\n writer.uint32(18).string(message.description);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiEndpointMetadata {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiEndpointMetadata();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.name = reader.string();\n break;\n case 2:\n message.description = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiEndpointMetadata>, I>>(object: I): RemoteApiEndpointMetadata {\n const message = createBaseRemoteApiEndpointMetadata();\n message.name = object.name ?? \"\";\n message.description = object.description ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiCachingConfig(): RemoteApiCachingConfig {\n return {\n cacheStrategy: RemoteApiCacheStrategy.CS_UNSET,\n ttlStrategy: RemoteApiCacheTTLStrategy.CTS_UNSET,\n ttlSec: \"0\",\n };\n}\n\nexport const RemoteApiCachingConfig = {\n encode(message: RemoteApiCachingConfig, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.cacheStrategy !== RemoteApiCacheStrategy.CS_UNSET) {\n writer.uint32(8).int32(remoteApiCacheStrategyToNumber(message.cacheStrategy));\n }\n if (message.ttlStrategy !== RemoteApiCacheTTLStrategy.CTS_UNSET) {\n writer.uint32(16).int32(remoteApiCacheTTLStrategyToNumber(message.ttlStrategy));\n }\n if (message.ttlSec !== \"0\") {\n writer.uint32(24).int64(message.ttlSec);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiCachingConfig {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiCachingConfig();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.cacheStrategy = remoteApiCacheStrategyFromJSON(reader.int32());\n break;\n case 2:\n message.ttlStrategy = remoteApiCacheTTLStrategyFromJSON(reader.int32());\n break;\n case 3:\n message.ttlSec = longToString(reader.int64() as Long);\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiCachingConfig>, I>>(object: I): RemoteApiCachingConfig {\n const message = createBaseRemoteApiCachingConfig();\n message.cacheStrategy = object.cacheStrategy ?? RemoteApiCacheStrategy.CS_UNSET;\n message.ttlStrategy = object.ttlStrategy ?? RemoteApiCacheTTLStrategy.CTS_UNSET;\n message.ttlSec = object.ttlSec ?? \"0\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiHttpEndpoint(): RemoteApiHttpEndpoint {\n return {\n path: \"\",\n methods: [],\n parameters: [],\n metadata: undefined,\n refId: \"\",\n type: RemoteApiEndpointType.TYPE_UNSET,\n protoDescriptor: new Uint8Array(),\n requestType: \"\",\n responseType: \"\",\n usesLocationProxy: false,\n cachingConfig: undefined,\n userLocationUseCase: UserLocationUseCase.USE_CASE_UNSET,\n documentationLink: \"\",\n description: \"\",\n responseParameters: [],\n reqAldRequestValidation: false,\n reqAldResponseValidation: false,\n aldContextWindow: \"\",\n aldRequestConfigs: [],\n aldResponseConfigs: [],\n };\n}\n\nexport const RemoteApiHttpEndpoint = {\n encode(message: RemoteApiHttpEndpoint, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.path !== \"\") {\n writer.uint32(10).string(message.path);\n }\n writer.uint32(18).fork();\n for (const v of message.methods) {\n writer.int32(remoteApiHttpEndpoint_HttpRequestMethodToNumber(v));\n }\n writer.ldelim();\n for (const v of message.parameters) {\n RemoteApiHttpRequestParameter.encode(v!, writer.uint32(26).fork()).ldelim();\n }\n if (message.metadata !== undefined) {\n RemoteApiEndpointMetadata.encode(message.metadata, writer.uint32(34).fork()).ldelim();\n }\n if (message.refId !== \"\") {\n writer.uint32(42).string(message.refId);\n }\n if (message.type !== RemoteApiEndpointType.TYPE_UNSET) {\n writer.uint32(48).int32(remoteApiEndpointTypeToNumber(message.type));\n }\n if (message.protoDescriptor.length !== 0) {\n writer.uint32(58).bytes(message.protoDescriptor);\n }\n if (message.requestType !== \"\") {\n writer.uint32(66).string(message.requestType);\n }\n if (message.responseType !== \"\") {\n writer.uint32(74).string(message.responseType);\n }\n if (message.usesLocationProxy === true) {\n writer.uint32(80).bool(message.usesLocationProxy);\n }\n if (message.cachingConfig !== undefined) {\n RemoteApiCachingConfig.encode(message.cachingConfig, writer.uint32(90).fork()).ldelim();\n }\n if (message.userLocationUseCase !== UserLocationUseCase.USE_CASE_UNSET) {\n writer.uint32(96).int32(userLocationUseCaseToNumber(message.userLocationUseCase));\n }\n if (message.documentationLink !== \"\") {\n writer.uint32(106).string(message.documentationLink);\n }\n if (message.description !== \"\") {\n writer.uint32(114).string(message.description);\n }\n for (const v of message.responseParameters) {\n RemoteApiHttpResponseParameter.encode(v!, writer.uint32(122).fork()).ldelim();\n }\n if (message.reqAldRequestValidation === true) {\n writer.uint32(128).bool(message.reqAldRequestValidation);\n }\n if (message.reqAldResponseValidation === true) {\n writer.uint32(136).bool(message.reqAldResponseValidation);\n }\n if (message.aldContextWindow !== \"\") {\n writer.uint32(146).string(message.aldContextWindow);\n }\n writer.uint32(154).fork();\n for (const v of message.aldRequestConfigs) {\n writer.int32(aldRequestValidationConfigToNumber(v));\n }\n writer.ldelim();\n writer.uint32(162).fork();\n for (const v of message.aldResponseConfigs) {\n writer.int32(aldResponseValidationConfigToNumber(v));\n }\n writer.ldelim();\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiHttpEndpoint {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiHttpEndpoint();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.path = reader.string();\n break;\n case 2:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.methods.push(remoteApiHttpEndpoint_HttpRequestMethodFromJSON(reader.int32()));\n }\n } else {\n message.methods.push(remoteApiHttpEndpoint_HttpRequestMethodFromJSON(reader.int32()));\n }\n break;\n case 3:\n message.parameters.push(RemoteApiHttpRequestParameter.decode(reader, reader.uint32()));\n break;\n case 4:\n message.metadata = RemoteApiEndpointMetadata.decode(reader, reader.uint32());\n break;\n case 5:\n message.refId = reader.string();\n break;\n case 6:\n message.type = remoteApiEndpointTypeFromJSON(reader.int32());\n break;\n case 7:\n message.protoDescriptor = reader.bytes();\n break;\n case 8:\n message.requestType = reader.string();\n break;\n case 9:\n message.responseType = reader.string();\n break;\n case 10:\n message.usesLocationProxy = reader.bool();\n break;\n case 11:\n message.cachingConfig = RemoteApiCachingConfig.decode(reader, reader.uint32());\n break;\n case 12:\n message.userLocationUseCase = userLocationUseCaseFromJSON(reader.int32());\n break;\n case 13:\n message.documentationLink = reader.string();\n break;\n case 14:\n message.description = reader.string();\n break;\n case 15:\n message.responseParameters.push(RemoteApiHttpResponseParameter.decode(reader, reader.uint32()));\n break;\n case 16:\n message.reqAldRequestValidation = reader.bool();\n break;\n case 17:\n message.reqAldResponseValidation = reader.bool();\n break;\n case 18:\n message.aldContextWindow = reader.string();\n break;\n case 19:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.aldRequestConfigs.push(aldRequestValidationConfigFromJSON(reader.int32()));\n }\n } else {\n message.aldRequestConfigs.push(aldRequestValidationConfigFromJSON(reader.int32()));\n }\n break;\n case 20:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.aldResponseConfigs.push(aldResponseValidationConfigFromJSON(reader.int32()));\n }\n } else {\n message.aldResponseConfigs.push(aldResponseValidationConfigFromJSON(reader.int32()));\n }\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiHttpEndpoint>, I>>(object: I): RemoteApiHttpEndpoint {\n const message = createBaseRemoteApiHttpEndpoint();\n message.path = object.path ?? \"\";\n message.methods = object.methods?.map((e) => e) || [];\n message.parameters = object.parameters?.map((e) => RemoteApiHttpRequestParameter.fromPartial(e)) || [];\n message.metadata =\n object.metadata !== undefined && object.metadata !== null\n ? RemoteApiEndpointMetadata.fromPartial(object.metadata)\n : undefined;\n message.refId = object.refId ?? \"\";\n message.type = object.type ?? RemoteApiEndpointType.TYPE_UNSET;\n message.protoDescriptor = object.protoDescriptor ?? new Uint8Array();\n message.requestType = object.requestType ?? \"\";\n message.responseType = object.responseType ?? \"\";\n message.usesLocationProxy = object.usesLocationProxy ?? false;\n message.cachingConfig =\n object.cachingConfig !== undefined && object.cachingConfig !== null\n ? RemoteApiCachingConfig.fromPartial(object.cachingConfig)\n : undefined;\n message.userLocationUseCase = object.userLocationUseCase ?? UserLocationUseCase.USE_CASE_UNSET;\n message.documentationLink = object.documentationLink ?? \"\";\n message.description = object.description ?? \"\";\n message.responseParameters =\n object.responseParameters?.map((e) => RemoteApiHttpResponseParameter.fromPartial(e)) || [];\n message.reqAldRequestValidation = object.reqAldRequestValidation ?? false;\n message.reqAldResponseValidation = object.reqAldResponseValidation ?? false;\n message.aldContextWindow = object.aldContextWindow ?? \"\";\n message.aldRequestConfigs = object.aldRequestConfigs?.map((e) => e) || [];\n message.aldResponseConfigs = object.aldResponseConfigs?.map((e) => e) || [];\n return message;\n },\n};\n\nfunction createBaseRemoteApiGrpcEndpoint(): RemoteApiGrpcEndpoint {\n return {\n methodSymbol: \"\",\n refId: \"\",\n requestType: \"\",\n responseType: \"\",\n usesLocationProxy: false,\n userLocationUseCase: UserLocationUseCase.USE_CASE_UNSET,\n documentationLink: \"\",\n description: \"\",\n responseParameters: [],\n protoDescriptor: new Uint8Array(),\n requestParameters: [],\n };\n}\n\nexport const RemoteApiGrpcEndpoint = {\n encode(message: RemoteApiGrpcEndpoint, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.methodSymbol !== \"\") {\n writer.uint32(10).string(message.methodSymbol);\n }\n if (message.refId !== \"\") {\n writer.uint32(18).string(message.refId);\n }\n if (message.requestType !== \"\") {\n writer.uint32(26).string(message.requestType);\n }\n if (message.responseType !== \"\") {\n writer.uint32(34).string(message.responseType);\n }\n if (message.usesLocationProxy === true) {\n writer.uint32(40).bool(message.usesLocationProxy);\n }\n if (message.userLocationUseCase !== UserLocationUseCase.USE_CASE_UNSET) {\n writer.uint32(48).int32(userLocationUseCaseToNumber(message.userLocationUseCase));\n }\n if (message.documentationLink !== \"\") {\n writer.uint32(58).string(message.documentationLink);\n }\n if (message.description !== \"\") {\n writer.uint32(66).string(message.description);\n }\n for (const v of message.responseParameters) {\n RemoteApiGrpcResponseParameter.encode(v!, writer.uint32(74).fork()).ldelim();\n }\n if (message.protoDescriptor.length !== 0) {\n writer.uint32(82).bytes(message.protoDescriptor);\n }\n for (const v of message.requestParameters) {\n RemoteApiGrpcRequestParameter.encode(v!, writer.uint32(90).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiGrpcEndpoint {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiGrpcEndpoint();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.methodSymbol = reader.string();\n break;\n case 2:\n message.refId = reader.string();\n break;\n case 3:\n message.requestType = reader.string();\n break;\n case 4:\n message.responseType = reader.string();\n break;\n case 5:\n message.usesLocationProxy = reader.bool();\n break;\n case 6:\n message.userLocationUseCase = userLocationUseCaseFromJSON(reader.int32());\n break;\n case 7:\n message.documentationLink = reader.string();\n break;\n case 8:\n message.description = reader.string();\n break;\n case 9:\n message.responseParameters.push(RemoteApiGrpcResponseParameter.decode(reader, reader.uint32()));\n break;\n case 10:\n message.protoDescriptor = reader.bytes();\n break;\n case 11:\n message.requestParameters.push(RemoteApiGrpcRequestParameter.decode(reader, reader.uint32()));\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiGrpcEndpoint>, I>>(object: I): RemoteApiGrpcEndpoint {\n const message = createBaseRemoteApiGrpcEndpoint();\n message.methodSymbol = object.methodSymbol ?? \"\";\n message.refId = object.refId ?? \"\";\n message.requestType = object.requestType ?? \"\";\n message.responseType = object.responseType ?? \"\";\n message.usesLocationProxy = object.usesLocationProxy ?? false;\n message.userLocationUseCase = object.userLocationUseCase ?? UserLocationUseCase.USE_CASE_UNSET;\n message.documentationLink = object.documentationLink ?? \"\";\n message.description = object.description ?? \"\";\n message.responseParameters =\n object.responseParameters?.map((e) => RemoteApiGrpcResponseParameter.fromPartial(e)) || [];\n message.protoDescriptor = object.protoDescriptor ?? new Uint8Array();\n message.requestParameters =\n object.requestParameters?.map((e) => RemoteApiGrpcRequestParameter.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseRemoteApiGrpcResponseParameter(): RemoteApiGrpcResponseParameter {\n return { name: \"\", hidden: false, macroValue: \"\" };\n}\n\nexport const RemoteApiGrpcResponseParameter = {\n encode(message: RemoteApiGrpcResponseParameter, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.hidden === true) {\n writer.uint32(16).bool(message.hidden);\n }\n if (message.macroValue !== \"\") {\n writer.uint32(26).string(message.macroValue);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiGrpcResponseParameter {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiGrpcResponseParameter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.name = reader.string();\n break;\n case 2:\n message.hidden = reader.bool();\n break;\n case 3:\n message.macroValue = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiGrpcResponseParameter>, I>>(\n object: I\n ): RemoteApiGrpcResponseParameter {\n const message = createBaseRemoteApiGrpcResponseParameter();\n message.name = object.name ?? \"\";\n message.hidden = object.hidden ?? false;\n message.macroValue = object.macroValue ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiGrpcRequestParameter(): RemoteApiGrpcRequestParameter {\n return { name: \"\", optional: false, defaultValue: \"\", constant: false };\n}\n\nexport const RemoteApiGrpcRequestParameter = {\n encode(message: RemoteApiGrpcRequestParameter, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.optional === true) {\n writer.uint32(16).bool(message.optional);\n }\n if (message.defaultValue !== \"\") {\n writer.uint32(26).string(message.defaultValue);\n }\n if (message.constant === true) {\n writer.uint32(32).bool(message.constant);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiGrpcRequestParameter {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiGrpcRequestParameter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.name = reader.string();\n break;\n case 2:\n message.optional = reader.bool();\n break;\n case 3:\n message.defaultValue = reader.string();\n break;\n case 4:\n message.constant = reader.bool();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiGrpcRequestParameter>, I>>(\n object: I\n ): RemoteApiGrpcRequestParameter {\n const message = createBaseRemoteApiGrpcRequestParameter();\n message.name = object.name ?? \"\";\n message.optional = object.optional ?? false;\n message.defaultValue = object.defaultValue ?? \"\";\n message.constant = object.constant ?? false;\n return message;\n },\n};\n\nfunction createBaseRemoteApiOAuth2Config(): RemoteApiOAuth2Config {\n return {\n clientId: \"\",\n grantType: RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET,\n authorizationUrl: \"\",\n tokenUrl: \"\",\n scope: \"\",\n clientSecret: \"\",\n };\n}\n\nexport const RemoteApiOAuth2Config = {\n encode(message: RemoteApiOAuth2Config, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.clientId !== \"\") {\n writer.uint32(10).string(message.clientId);\n }\n if (message.grantType !== RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET) {\n writer.uint32(16).int32(remoteApiOAuth2Config_GrantTypeToNumber(message.grantType));\n }\n if (message.authorizationUrl !== \"\") {\n writer.uint32(26).string(message.authorizationUrl);\n }\n if (message.tokenUrl !== \"\") {\n writer.uint32(34).string(message.tokenUrl);\n }\n if (message.scope !== \"\") {\n writer.uint32(42).string(message.scope);\n }\n if (message.clientSecret !== \"\") {\n writer.uint32(50).string(message.clientSecret);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiOAuth2Config {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiOAuth2Config();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.clientId = reader.string();\n break;\n case 2:\n message.grantType = remoteApiOAuth2Config_GrantTypeFromJSON(reader.int32());\n break;\n case 3:\n message.authorizationUrl = reader.string();\n break;\n case 4:\n message.tokenUrl = reader.string();\n break;\n case 5:\n message.scope = reader.string();\n break;\n case 6:\n message.clientSecret = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiOAuth2Config>, I>>(object: I): RemoteApiOAuth2Config {\n const message = createBaseRemoteApiOAuth2Config();\n message.clientId = object.clientId ?? \"\";\n message.grantType = object.grantType ?? RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET;\n message.authorizationUrl = object.authorizationUrl ?? \"\";\n message.tokenUrl = object.tokenUrl ?? \"\";\n message.scope = object.scope ?? \"\";\n message.clientSecret = object.clientSecret ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiSecurityConfig(): RemoteApiSecurityConfig {\n return { securityScheme: RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET, configs: undefined };\n}\n\nexport const RemoteApiSecurityConfig = {\n encode(message: RemoteApiSecurityConfig, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.securityScheme !== RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET) {\n writer.uint32(8).int32(remoteApiSecurityConfig_SecuritySchemeToNumber(message.securityScheme));\n }\n if (message.configs?.$case === \"apiKeyParam\") {\n RemoteApiHttpRequestParameter.encode(message.configs.apiKeyParam, writer.uint32(18).fork()).ldelim();\n }\n if (message.configs?.$case === \"oauth2Config\") {\n RemoteApiOAuth2Config.encode(message.configs.oauth2Config, writer.uint32(26).fork()).ldelim();\n }\n if (message.configs?.$case === \"apiKeyConfig\") {\n RemoteApiKeyConfig.encode(message.configs.apiKeyConfig, writer.uint32(34).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiSecurityConfig {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSecurityConfig();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.securityScheme = remoteApiSecurityConfig_SecuritySchemeFromJSON(reader.int32());\n break;\n case 2:\n message.configs = {\n $case: \"apiKeyParam\",\n apiKeyParam: RemoteApiHttpRequestParameter.decode(reader, reader.uint32()),\n };\n break;\n case 3:\n message.configs = {\n $case: \"oauth2Config\",\n oauth2Config: RemoteApiOAuth2Config.decode(reader, reader.uint32()),\n };\n break;\n case 4:\n message.configs = { $case: \"apiKeyConfig\", apiKeyConfig: RemoteApiKeyConfig.decode(reader, reader.uint32()) };\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiSecurityConfig>, I>>(object: I): RemoteApiSecurityConfig {\n const message = createBaseRemoteApiSecurityConfig();\n message.securityScheme = object.securityScheme ?? RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET;\n if (\n object.configs?.$case === \"apiKeyParam\" &&\n object.configs?.apiKeyParam !== undefined &&\n object.configs?.apiKeyParam !== null\n ) {\n message.configs = {\n $case: \"apiKeyParam\",\n apiKeyParam: RemoteApiHttpRequestParameter.fromPartial(object.configs.apiKeyParam),\n };\n }\n if (\n object.configs?.$case === \"oauth2Config\" &&\n object.configs?.oauth2Config !== undefined &&\n object.configs?.oauth2Config !== null\n ) {\n message.configs = {\n $case: \"oauth2Config\",\n oauth2Config: RemoteApiOAuth2Config.fromPartial(object.configs.oauth2Config),\n };\n }\n if (\n object.configs?.$case === \"apiKeyConfig\" &&\n object.configs?.apiKeyConfig !== undefined &&\n object.configs?.apiKeyConfig !== null\n ) {\n message.configs = {\n $case: \"apiKeyConfig\",\n apiKeyConfig: RemoteApiKeyConfig.fromPartial(object.configs.apiKeyConfig),\n };\n }\n return message;\n },\n};\n\nfunction createBaseRemoteApiKeyConfig(): RemoteApiKeyConfig {\n return { params: [], secretValues: {} };\n}\n\nexport const RemoteApiKeyConfig = {\n encode(message: RemoteApiKeyConfig, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.params) {\n RemoteApiHttpRequestParameter.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n Object.entries(message.secretValues).forEach(([key, value]) => {\n RemoteApiKeyConfig_SecretValuesEntry.encode({ key: key as any, value }, writer.uint32(18).fork()).ldelim();\n });\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiKeyConfig {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiKeyConfig();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.params.push(RemoteApiHttpRequestParameter.decode(reader, reader.uint32()));\n break;\n case 2:\n const entry2 = RemoteApiKeyConfig_SecretValuesEntry.decode(reader, reader.uint32());\n if (entry2.value !== undefined) {\n message.secretValues[entry2.key] = entry2.value;\n }\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiKeyConfig>, I>>(object: I): RemoteApiKeyConfig {\n const message = createBaseRemoteApiKeyConfig();\n message.params = object.params?.map((e) => RemoteApiHttpRequestParameter.fromPartial(e)) || [];\n message.secretValues = Object.entries(object.secretValues ?? {}).reduce<{ [key: string]: string }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = String(value);\n }\n return acc;\n },\n {}\n );\n return message;\n },\n};\n\nfunction createBaseRemoteApiKeyConfig_SecretValuesEntry(): RemoteApiKeyConfig_SecretValuesEntry {\n return { key: \"\", value: \"\" };\n}\n\nexport const RemoteApiKeyConfig_SecretValuesEntry = {\n encode(message: RemoteApiKeyConfig_SecretValuesEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== \"\") {\n writer.uint32(18).string(message.value);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiKeyConfig_SecretValuesEntry {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiKeyConfig_SecretValuesEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.key = reader.string();\n break;\n case 2:\n message.value = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiKeyConfig_SecretValuesEntry>, I>>(\n object: I\n ): RemoteApiKeyConfig_SecretValuesEntry {\n const message = createBaseRemoteApiKeyConfig_SecretValuesEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiSpecMetadata(): RemoteApiSpecMetadata {\n return {\n name: \"\",\n author: \"\",\n creationTimeSec: \"0\",\n lastEditTimeSec: \"0\",\n lastEditor: \"\",\n reviewTimeSec: \"0\",\n reviewer: \"\",\n secretId: \"\",\n derivedFromSpecId: \"\",\n createdFrom: CreatedFrom.CREATED_FROM_UNSET,\n iconUrl: \"\",\n providerName: \"\",\n description: \"\",\n documentationUrl: \"\",\n internalApiQuipUrl: \"\",\n version: \"0\",\n };\n}\n\nexport const RemoteApiSpecMetadata = {\n encode(message: RemoteApiSpecMetadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.author !== \"\") {\n writer.uint32(18).string(message.author);\n }\n if (message.creationTimeSec !== \"0\") {\n writer.uint32(24).int64(message.creationTimeSec);\n }\n if (message.lastEditTimeSec !== \"0\") {\n writer.uint32(32).int64(message.lastEditTimeSec);\n }\n if (message.lastEditor !== \"\") {\n writer.uint32(42).string(message.lastEditor);\n }\n if (message.reviewTimeSec !== \"0\") {\n writer.uint32(48).int64(message.reviewTimeSec);\n }\n if (message.reviewer !== \"\") {\n writer.uint32(58).string(message.reviewer);\n }\n if (message.secretId !== \"\") {\n writer.uint32(66).string(message.secretId);\n }\n if (message.derivedFromSpecId !== \"\") {\n writer.uint32(74).string(message.derivedFromSpecId);\n }\n if (message.createdFrom !== CreatedFrom.CREATED_FROM_UNSET) {\n writer.uint32(80).int32(createdFromToNumber(message.createdFrom));\n }\n if (message.iconUrl !== \"\") {\n writer.uint32(90).string(message.iconUrl);\n }\n if (message.providerName !== \"\") {\n writer.uint32(98).string(message.providerName);\n }\n if (message.description !== \"\") {\n writer.uint32(106).string(message.description);\n }\n if (message.documentationUrl !== \"\") {\n writer.uint32(114).string(message.documentationUrl);\n }\n if (message.internalApiQuipUrl !== \"\") {\n writer.uint32(122).string(message.internalApiQuipUrl);\n }\n if (message.version !== \"0\") {\n writer.uint32(128).int64(message.version);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiSpecMetadata {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSpecMetadata();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.name = reader.string();\n break;\n case 2:\n message.author = reader.string();\n break;\n case 3:\n message.creationTimeSec = longToString(reader.int64() as Long);\n break;\n case 4:\n message.lastEditTimeSec = longToString(reader.int64() as Long);\n break;\n case 5:\n message.lastEditor = reader.string();\n break;\n case 6:\n message.reviewTimeSec = longToString(reader.int64() as Long);\n break;\n case 7:\n message.reviewer = reader.string();\n break;\n case 8:\n message.secretId = reader.string();\n break;\n case 9:\n message.derivedFromSpecId = reader.string();\n break;\n case 10:\n message.createdFrom = createdFromFromJSON(reader.int32());\n break;\n case 11:\n message.iconUrl = reader.string();\n break;\n case 12:\n message.providerName = reader.string();\n break;\n case 13:\n message.description = reader.string();\n break;\n case 14:\n message.documentationUrl = reader.string();\n break;\n case 15:\n message.internalApiQuipUrl = reader.string();\n break;\n case 16:\n message.version = longToString(reader.int64() as Long);\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiSpecMetadata>, I>>(object: I): RemoteApiSpecMetadata {\n const message = createBaseRemoteApiSpecMetadata();\n message.name = object.name ?? \"\";\n message.author = object.author ?? \"\";\n message.creationTimeSec = object.creationTimeSec ?? \"0\";\n message.lastEditTimeSec = object.lastEditTimeSec ?? \"0\";\n message.lastEditor = object.lastEditor ?? \"\";\n message.reviewTimeSec = object.reviewTimeSec ?? \"0\";\n message.reviewer = object.reviewer ?? \"\";\n message.secretId = object.secretId ?? \"\";\n message.derivedFromSpecId = object.derivedFromSpecId ?? \"\";\n message.createdFrom = object.createdFrom ?? CreatedFrom.CREATED_FROM_UNSET;\n message.iconUrl = object.iconUrl ?? \"\";\n message.providerName = object.providerName ?? \"\";\n message.description = object.description ?? \"\";\n message.documentationUrl = object.documentationUrl ?? \"\";\n message.internalApiQuipUrl = object.internalApiQuipUrl ?? \"\";\n message.version = object.version ?? \"0\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiSpec(): RemoteApiSpec {\n return {\n id: \"\",\n endpoints: [],\n securityConfig: undefined,\n host: \"\",\n tlsRequired: false,\n maxRequestSizeBytes: 0,\n maxResponseSizeBytes: 0,\n maxResponseTimeMillis: 0,\n approvalState: SpecApprovalState.APPROVAL_STATE_UNSET,\n visibility: SpecVisibility.VISIBILITY_UNSET,\n metadata: undefined,\n targetPlatforms: [],\n customVisibilityUsers: [],\n localOnly: false,\n lastAccessTimeSec: \"0\",\n restrictedJsApiPermissions: [],\n minLensStudioVersion: \"\",\n sponsoredLensRestricted: false,\n editPermissionUsers: [],\n grpcEndpoints: [],\n snapkitAppId: \"\",\n useBuiltinLocalProcessor: false,\n orgId: \"\",\n };\n}\n\nexport const RemoteApiSpec = {\n encode(message: RemoteApiSpec, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.id !== \"\") {\n writer.uint32(10).string(message.id);\n }\n for (const v of message.endpoints) {\n RemoteApiHttpEndpoint.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n if (message.securityConfig !== undefined) {\n RemoteApiSecurityConfig.encode(message.securityConfig, writer.uint32(26).fork()).ldelim();\n }\n if (message.host !== \"\") {\n writer.uint32(34).string(message.host);\n }\n if (message.tlsRequired === true) {\n writer.uint32(40).bool(message.tlsRequired);\n }\n if (message.maxRequestSizeBytes !== 0) {\n writer.uint32(48).int32(message.maxRequestSizeBytes);\n }\n if (message.maxResponseSizeBytes !== 0) {\n writer.uint32(56).int32(message.maxResponseSizeBytes);\n }\n if (message.maxResponseTimeMillis !== 0) {\n writer.uint32(64).int32(message.maxResponseTimeMillis);\n }\n if (message.approvalState !== SpecApprovalState.APPROVAL_STATE_UNSET) {\n writer.uint32(72).int32(specApprovalStateToNumber(message.approvalState));\n }\n if (message.visibility !== SpecVisibility.VISIBILITY_UNSET) {\n writer.uint32(80).int32(specVisibilityToNumber(message.visibility));\n }\n if (message.metadata !== undefined) {\n RemoteApiSpecMetadata.encode(message.metadata, writer.uint32(90).fork()).ldelim();\n }\n writer.uint32(98).fork();\n for (const v of message.targetPlatforms) {\n writer.int32(targetPlatformToNumber(v));\n }\n writer.ldelim();\n for (const v of message.customVisibilityUsers) {\n writer.uint32(106).string(v!);\n }\n if (message.localOnly === true) {\n writer.uint32(112).bool(message.localOnly);\n }\n if (message.lastAccessTimeSec !== \"0\") {\n writer.uint32(120).int64(message.lastAccessTimeSec);\n }\n writer.uint32(130).fork();\n for (const v of message.restrictedJsApiPermissions) {\n writer.int32(restrictedJsApiPermissionToNumber(v));\n }\n writer.ldelim();\n if (message.minLensStudioVersion !== \"\") {\n writer.uint32(138).string(message.minLensStudioVersion);\n }\n if (message.sponsoredLensRestricted === true) {\n writer.uint32(144).bool(message.sponsoredLensRestricted);\n }\n for (const v of message.editPermissionUsers) {\n writer.uint32(154).string(v!);\n }\n for (const v of message.grpcEndpoints) {\n RemoteApiGrpcEndpoint.encode(v!, writer.uint32(162).fork()).ldelim();\n }\n if (message.snapkitAppId !== \"\") {\n writer.uint32(170).string(message.snapkitAppId);\n }\n if (message.useBuiltinLocalProcessor === true) {\n writer.uint32(176).bool(message.useBuiltinLocalProcessor);\n }\n if (message.orgId !== \"\") {\n writer.uint32(186).string(message.orgId);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiSpec {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSpec();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.id = reader.string();\n break;\n case 2:\n message.endpoints.push(RemoteApiHttpEndpoint.decode(reader, reader.uint32()));\n break;\n case 3:\n message.securityConfig = RemoteApiSecurityConfig.decode(reader, reader.uint32());\n break;\n case 4:\n message.host = reader.string();\n break;\n case 5:\n message.tlsRequired = reader.bool();\n break;\n case 6:\n message.maxRequestSizeBytes = reader.int32();\n break;\n case 7:\n message.maxResponseSizeBytes = reader.int32();\n break;\n case 8:\n message.maxResponseTimeMillis = reader.int32();\n break;\n case 9:\n message.approvalState = specApprovalStateFromJSON(reader.int32());\n break;\n case 10:\n message.visibility = specVisibilityFromJSON(reader.int32());\n break;\n case 11:\n message.metadata = RemoteApiSpecMetadata.decode(reader, reader.uint32());\n break;\n case 12:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.targetPlatforms.push(targetPlatformFromJSON(reader.int32()));\n }\n } else {\n message.targetPlatforms.push(targetPlatformFromJSON(reader.int32()));\n }\n break;\n case 13:\n message.customVisibilityUsers.push(reader.string());\n break;\n case 14:\n message.localOnly = reader.bool();\n break;\n case 15:\n message.lastAccessTimeSec = longToString(reader.int64() as Long);\n break;\n case 16:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.restrictedJsApiPermissions.push(restrictedJsApiPermissionFromJSON(reader.int32()));\n }\n } else {\n message.restrictedJsApiPermissions.push(restrictedJsApiPermissionFromJSON(reader.int32()));\n }\n break;\n case 17:\n message.minLensStudioVersion = reader.string();\n break;\n case 18:\n message.sponsoredLensRestricted = reader.bool();\n break;\n case 19:\n message.editPermissionUsers.push(reader.string());\n break;\n case 20:\n message.grpcEndpoints.push(RemoteApiGrpcEndpoint.decode(reader, reader.uint32()));\n break;\n case 21:\n message.snapkitAppId = reader.string();\n break;\n case 22:\n message.useBuiltinLocalProcessor = reader.bool();\n break;\n case 23:\n message.orgId = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiSpec>, I>>(object: I): RemoteApiSpec {\n const message = createBaseRemoteApiSpec();\n message.id = object.id ?? \"\";\n message.endpoints = object.endpoints?.map((e) => RemoteApiHttpEndpoint.fromPartial(e)) || [];\n message.securityConfig =\n object.securityConfig !== undefined && object.securityConfig !== null\n ? RemoteApiSecurityConfig.fromPartial(object.securityConfig)\n : undefined;\n message.host = object.host ?? \"\";\n message.tlsRequired = object.tlsRequired ?? false;\n message.maxRequestSizeBytes = object.maxRequestSizeBytes ?? 0;\n message.maxResponseSizeBytes = object.maxResponseSizeBytes ?? 0;\n message.maxResponseTimeMillis = object.maxResponseTimeMillis ?? 0;\n message.approvalState = object.approvalState ?? SpecApprovalState.APPROVAL_STATE_UNSET;\n message.visibility = object.visibility ?? SpecVisibility.VISIBILITY_UNSET;\n message.metadata =\n object.metadata !== undefined && object.metadata !== null\n ? RemoteApiSpecMetadata.fromPartial(object.metadata)\n : undefined;\n message.targetPlatforms = object.targetPlatforms?.map((e) => e) || [];\n message.customVisibilityUsers = object.customVisibilityUsers?.map((e) => e) || [];\n message.localOnly = object.localOnly ?? false;\n message.lastAccessTimeSec = object.lastAccessTimeSec ?? \"0\";\n message.restrictedJsApiPermissions = object.restrictedJsApiPermissions?.map((e) => e) || [];\n message.minLensStudioVersion = object.minLensStudioVersion ?? \"\";\n message.sponsoredLensRestricted = object.sponsoredLensRestricted ?? false;\n message.editPermissionUsers = object.editPermissionUsers?.map((e) => e) || [];\n message.grpcEndpoints = object.grpcEndpoints?.map((e) => RemoteApiGrpcEndpoint.fromPartial(e)) || [];\n message.snapkitAppId = object.snapkitAppId ?? \"\";\n message.useBuiltinLocalProcessor = object.useBuiltinLocalProcessor ?? false;\n message.orgId = object.orgId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiSpecSetMetadata(): RemoteApiSpecSetMetadata {\n return {\n name: \"\",\n iconUrl: \"\",\n providerName: \"\",\n description: \"\",\n author: \"\",\n creationTimeSec: \"0\",\n lastEditTimeSec: \"0\",\n lastEditor: \"\",\n documentationUrl: \"\",\n createdFrom: CreatedFrom.CREATED_FROM_UNSET,\n };\n}\n\nexport const RemoteApiSpecSetMetadata = {\n encode(message: RemoteApiSpecSetMetadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.iconUrl !== \"\") {\n writer.uint32(18).string(message.iconUrl);\n }\n if (message.providerName !== \"\") {\n writer.uint32(26).string(message.providerName);\n }\n if (message.description !== \"\") {\n writer.uint32(34).string(message.description);\n }\n if (message.author !== \"\") {\n writer.uint32(42).string(message.author);\n }\n if (message.creationTimeSec !== \"0\") {\n writer.uint32(48).int64(message.creationTimeSec);\n }\n if (message.lastEditTimeSec !== \"0\") {\n writer.uint32(56).int64(message.lastEditTimeSec);\n }\n if (message.lastEditor !== \"\") {\n writer.uint32(66).string(message.lastEditor);\n }\n if (message.documentationUrl !== \"\") {\n writer.uint32(74).string(message.documentationUrl);\n }\n if (message.createdFrom !== CreatedFrom.CREATED_FROM_UNSET) {\n writer.uint32(80).int32(createdFromToNumber(message.createdFrom));\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiSpecSetMetadata {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSpecSetMetadata();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.name = reader.string();\n break;\n case 2:\n message.iconUrl = reader.string();\n break;\n case 3:\n message.providerName = reader.string();\n break;\n case 4:\n message.description = reader.string();\n break;\n case 5:\n message.author = reader.string();\n break;\n case 6:\n message.creationTimeSec = longToString(reader.int64() as Long);\n break;\n case 7:\n message.lastEditTimeSec = longToString(reader.int64() as Long);\n break;\n case 8:\n message.lastEditor = reader.string();\n break;\n case 9:\n message.documentationUrl = reader.string();\n break;\n case 10:\n message.createdFrom = createdFromFromJSON(reader.int32());\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiSpecSetMetadata>, I>>(object: I): RemoteApiSpecSetMetadata {\n const message = createBaseRemoteApiSpecSetMetadata();\n message.name = object.name ?? \"\";\n message.iconUrl = object.iconUrl ?? \"\";\n message.providerName = object.providerName ?? \"\";\n message.description = object.description ?? \"\";\n message.author = object.author ?? \"\";\n message.creationTimeSec = object.creationTimeSec ?? \"0\";\n message.lastEditTimeSec = object.lastEditTimeSec ?? \"0\";\n message.lastEditor = object.lastEditor ?? \"\";\n message.documentationUrl = object.documentationUrl ?? \"\";\n message.createdFrom = object.createdFrom ?? CreatedFrom.CREATED_FROM_UNSET;\n return message;\n },\n};\n\nfunction createBaseRemoteApiSpecSet(): RemoteApiSpecSet {\n return { id: \"\", specs: [], metadata: undefined, lastAccessTimeSec: \"0\" };\n}\n\nexport const RemoteApiSpecSet = {\n encode(message: RemoteApiSpecSet, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.id !== \"\") {\n writer.uint32(10).string(message.id);\n }\n for (const v of message.specs) {\n RemoteApiSpec.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n if (message.metadata !== undefined) {\n RemoteApiSpecSetMetadata.encode(message.metadata, writer.uint32(26).fork()).ldelim();\n }\n if (message.lastAccessTimeSec !== \"0\") {\n writer.uint32(32).int64(message.lastAccessTimeSec);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RemoteApiSpecSet {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSpecSet();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.id = reader.string();\n break;\n case 2:\n message.specs.push(RemoteApiSpec.decode(reader, reader.uint32()));\n break;\n case 3:\n message.metadata = RemoteApiSpecSetMetadata.decode(reader, reader.uint32());\n break;\n case 4:\n message.lastAccessTimeSec = longToString(reader.int64() as Long);\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<RemoteApiSpecSet>, I>>(object: I): RemoteApiSpecSet {\n const message = createBaseRemoteApiSpecSet();\n message.id = object.id ?? \"\";\n message.specs = object.specs?.map((e) => RemoteApiSpec.fromPartial(e)) || [];\n message.metadata =\n object.metadata !== undefined && object.metadata !== null\n ? RemoteApiSpecSetMetadata.fromPartial(object.metadata)\n : undefined;\n message.lastAccessTimeSec = object.lastAccessTimeSec ?? \"0\";\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin\n ? T\n : T extends Array<infer U>\n ? Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U>\n ? ReadonlyArray<DeepPartial<U>>\n : T extends { $case: string }\n ? { [K in keyof Omit<T, \"$case\">]?: DeepPartial<T[K]> } & { $case: T[\"$case\"] }\n : T extends {}\n ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\ntype KeysOfUnion<T> = T extends T ? keyof T : never;\nexport type Exact<P, I extends P> = P extends Builtin\n ? P\n : P & { [K in keyof P]: Exact<P[K], I[K]> } & Record<Exclude<keyof I, KeysOfUnion<P>>, never>;\n\nfunction longToString(long: Long) {\n return long.toString();\n}\n\nif (_m0.util.Long !== Long) {\n _m0.util.Long = Long as any;\n _m0.configure();\n}\n"]}
1
+ {"version":3,"file":"remote_api_spec.js","sourceRoot":"","sources":["../../../../../src/generated-proto/pb_schema/lenses/remote_api/remote_api_spec.ts"],"names":[],"mappings":"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","sourcesContent":["// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.2.4\n// protoc v5.28.2\n// source: lenses/remote_api/remote_api_spec.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\n\nexport const protobufPackage = \"snapchat.lenses\";\n\n/** Data interface used by an API endpoint */\nexport enum RemoteApiEndpointType {\n /** TYPE_UNSET - Invalid empty value */\n TYPE_UNSET = \"TYPE_UNSET\",\n /** TEXT - Text-based API, usually JSON */\n TEXT = \"TEXT\",\n /** PROTO - Protobuf-based API, request and response are proto messages */\n PROTO = \"PROTO\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiEndpointTypeFromJSON(object: any): RemoteApiEndpointType {\n switch (object) {\n case 0:\n case \"TYPE_UNSET\":\n return RemoteApiEndpointType.TYPE_UNSET;\n case 1:\n case \"TEXT\":\n return RemoteApiEndpointType.TEXT;\n case 2:\n case \"PROTO\":\n return RemoteApiEndpointType.PROTO;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiEndpointType.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiEndpointTypeToNumber(object: RemoteApiEndpointType): number {\n switch (object) {\n case RemoteApiEndpointType.TYPE_UNSET:\n return 0;\n case RemoteApiEndpointType.TEXT:\n return 1;\n case RemoteApiEndpointType.PROTO:\n return 2;\n case RemoteApiEndpointType.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Defines caching behavior for an endpoint */\nexport enum RemoteApiCacheStrategy {\n /** CS_UNSET - Invalid empty value */\n CS_UNSET = \"CS_UNSET\",\n /** USE_HEADERS - Rely on Cache-control headers */\n USE_HEADERS = \"USE_HEADERS\",\n /** ALWAYS - Always cache */\n ALWAYS = \"ALWAYS\",\n /** NEVER - Never cache */\n NEVER = \"NEVER\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiCacheStrategyFromJSON(object: any): RemoteApiCacheStrategy {\n switch (object) {\n case 0:\n case \"CS_UNSET\":\n return RemoteApiCacheStrategy.CS_UNSET;\n case 1:\n case \"USE_HEADERS\":\n return RemoteApiCacheStrategy.USE_HEADERS;\n case 2:\n case \"ALWAYS\":\n return RemoteApiCacheStrategy.ALWAYS;\n case 3:\n case \"NEVER\":\n return RemoteApiCacheStrategy.NEVER;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiCacheStrategy.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiCacheStrategyToNumber(object: RemoteApiCacheStrategy): number {\n switch (object) {\n case RemoteApiCacheStrategy.CS_UNSET:\n return 0;\n case RemoteApiCacheStrategy.USE_HEADERS:\n return 1;\n case RemoteApiCacheStrategy.ALWAYS:\n return 2;\n case RemoteApiCacheStrategy.NEVER:\n return 3;\n case RemoteApiCacheStrategy.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/**\n * Normally, proxy relies on the response Cache-control header to determine cache TTL.\n * When to override 3p API-provided cache TTL with the one specified in the spec\n */\nexport enum RemoteApiCacheTTLStrategy {\n /** CTS_UNSET - Never override TTL from Cache-control header */\n CTS_UNSET = \"CTS_UNSET\",\n /** EXACT - Always use spec-provided TTL, ignore Cache-control header */\n EXACT = \"EXACT\",\n /** FLOOR - Use spec-provided TTL if Cache-control TTL is less */\n FLOOR = \"FLOOR\",\n /** CEILING - Use spec-provided TTL if Cache-control TTL is greater */\n CEILING = \"CEILING\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiCacheTTLStrategyFromJSON(object: any): RemoteApiCacheTTLStrategy {\n switch (object) {\n case 0:\n case \"CTS_UNSET\":\n return RemoteApiCacheTTLStrategy.CTS_UNSET;\n case 1:\n case \"EXACT\":\n return RemoteApiCacheTTLStrategy.EXACT;\n case 2:\n case \"FLOOR\":\n return RemoteApiCacheTTLStrategy.FLOOR;\n case 3:\n case \"CEILING\":\n return RemoteApiCacheTTLStrategy.CEILING;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiCacheTTLStrategy.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiCacheTTLStrategyToNumber(object: RemoteApiCacheTTLStrategy): number {\n switch (object) {\n case RemoteApiCacheTTLStrategy.CTS_UNSET:\n return 0;\n case RemoteApiCacheTTLStrategy.EXACT:\n return 1;\n case RemoteApiCacheTTLStrategy.FLOOR:\n return 2;\n case RemoteApiCacheTTLStrategy.CEILING:\n return 3;\n case RemoteApiCacheTTLStrategy.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Options in HTTP request to run through ALD (Abuse Language Detection) */\nexport enum AldRequestValidationConfig {\n /** ALD_REQ_CONFIG_UNSET - Unset */\n ALD_REQ_CONFIG_UNSET = \"ALD_REQ_CONFIG_UNSET\",\n /** REQ_BODY - Request Body */\n REQ_BODY = \"REQ_BODY\",\n /** REQ_URL - Request URL */\n REQ_URL = \"REQ_URL\",\n /** REQ_HEADERS - Request headers */\n REQ_HEADERS = \"REQ_HEADERS\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function aldRequestValidationConfigFromJSON(object: any): AldRequestValidationConfig {\n switch (object) {\n case 0:\n case \"ALD_REQ_CONFIG_UNSET\":\n return AldRequestValidationConfig.ALD_REQ_CONFIG_UNSET;\n case 1:\n case \"REQ_BODY\":\n return AldRequestValidationConfig.REQ_BODY;\n case 2:\n case \"REQ_URL\":\n return AldRequestValidationConfig.REQ_URL;\n case 3:\n case \"REQ_HEADERS\":\n return AldRequestValidationConfig.REQ_HEADERS;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return AldRequestValidationConfig.UNRECOGNIZED;\n }\n}\n\nexport function aldRequestValidationConfigToNumber(object: AldRequestValidationConfig): number {\n switch (object) {\n case AldRequestValidationConfig.ALD_REQ_CONFIG_UNSET:\n return 0;\n case AldRequestValidationConfig.REQ_BODY:\n return 1;\n case AldRequestValidationConfig.REQ_URL:\n return 2;\n case AldRequestValidationConfig.REQ_HEADERS:\n return 3;\n case AldRequestValidationConfig.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Options in HTTP response to run through ALD (Abuse Language Detection) */\nexport enum AldResponseValidationConfig {\n /** ALD_RESP_CONFIG_UNSET - Unset */\n ALD_RESP_CONFIG_UNSET = \"ALD_RESP_CONFIG_UNSET\",\n /** RESP_BODY - Response Body */\n RESP_BODY = \"RESP_BODY\",\n /** RESP_HEADERS - Response headers */\n RESP_HEADERS = \"RESP_HEADERS\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function aldResponseValidationConfigFromJSON(object: any): AldResponseValidationConfig {\n switch (object) {\n case 0:\n case \"ALD_RESP_CONFIG_UNSET\":\n return AldResponseValidationConfig.ALD_RESP_CONFIG_UNSET;\n case 1:\n case \"RESP_BODY\":\n return AldResponseValidationConfig.RESP_BODY;\n case 2:\n case \"RESP_HEADERS\":\n return AldResponseValidationConfig.RESP_HEADERS;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return AldResponseValidationConfig.UNRECOGNIZED;\n }\n}\n\nexport function aldResponseValidationConfigToNumber(object: AldResponseValidationConfig): number {\n switch (object) {\n case AldResponseValidationConfig.ALD_RESP_CONFIG_UNSET:\n return 0;\n case AldResponseValidationConfig.RESP_BODY:\n return 1;\n case AldResponseValidationConfig.RESP_HEADERS:\n return 2;\n case AldResponseValidationConfig.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/**\n * Approval state of an API spec\n * See more: https://docs.google.com/document/d/1uNuHwRT6a5_XBNQ1gZGNpdNVUEaTTCYkMFtnj7r3Z24/edit?usp=sharing\n */\nexport enum SpecApprovalState {\n /** APPROVAL_STATE_UNSET - Invalid value */\n APPROVAL_STATE_UNSET = \"APPROVAL_STATE_UNSET\",\n /** IN_REVIEW - In review */\n IN_REVIEW = \"IN_REVIEW\",\n /** APPROVED - Approved */\n APPROVED = \"APPROVED\",\n /** BLOCKED - Blocked */\n BLOCKED = \"BLOCKED\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function specApprovalStateFromJSON(object: any): SpecApprovalState {\n switch (object) {\n case 0:\n case \"APPROVAL_STATE_UNSET\":\n return SpecApprovalState.APPROVAL_STATE_UNSET;\n case 1:\n case \"IN_REVIEW\":\n return SpecApprovalState.IN_REVIEW;\n case 2:\n case \"APPROVED\":\n return SpecApprovalState.APPROVED;\n case 3:\n case \"BLOCKED\":\n return SpecApprovalState.BLOCKED;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return SpecApprovalState.UNRECOGNIZED;\n }\n}\n\nexport function specApprovalStateToNumber(object: SpecApprovalState): number {\n switch (object) {\n case SpecApprovalState.APPROVAL_STATE_UNSET:\n return 0;\n case SpecApprovalState.IN_REVIEW:\n return 1;\n case SpecApprovalState.APPROVED:\n return 2;\n case SpecApprovalState.BLOCKED:\n return 3;\n case SpecApprovalState.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Who should be able to see/use the spec */\nexport enum SpecVisibility {\n /** VISIBILITY_UNSET - Invalid value */\n VISIBILITY_UNSET = \"VISIBILITY_UNSET\",\n /**\n * INTERNAL - Only internal Lens Studio versions\n *\n * @deprecated\n */\n INTERNAL = \"INTERNAL\",\n /** PRIVATE - Only the spec creator and those on allowlist */\n PRIVATE = \"PRIVATE\",\n /** EXTERNAL - Accessible to everyone */\n EXTERNAL = \"EXTERNAL\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function specVisibilityFromJSON(object: any): SpecVisibility {\n switch (object) {\n case 0:\n case \"VISIBILITY_UNSET\":\n return SpecVisibility.VISIBILITY_UNSET;\n case 1:\n case \"INTERNAL\":\n return SpecVisibility.INTERNAL;\n case 2:\n case \"PRIVATE\":\n return SpecVisibility.PRIVATE;\n case 3:\n case \"EXTERNAL\":\n return SpecVisibility.EXTERNAL;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return SpecVisibility.UNRECOGNIZED;\n }\n}\n\nexport function specVisibilityToNumber(object: SpecVisibility): number {\n switch (object) {\n case SpecVisibility.VISIBILITY_UNSET:\n return 0;\n case SpecVisibility.INTERNAL:\n return 1;\n case SpecVisibility.PRIVATE:\n return 2;\n case SpecVisibility.EXTERNAL:\n return 3;\n case SpecVisibility.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/**\n * Where was this api created from; in the future we may end up with\n * different behavior for Specs created from different properties\n */\nexport enum CreatedFrom {\n /** CREATED_FROM_UNSET - Invalid value */\n CREATED_FROM_UNSET = \"CREATED_FROM_UNSET\",\n /** REMOTE_API_ADMIN - This was created on Remote-Api-Admin by an internal team member */\n REMOTE_API_ADMIN = \"REMOTE_API_ADMIN\",\n /** MY_LENSES - This was created on My-Lenses by an external team member */\n MY_LENSES = \"MY_LENSES\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function createdFromFromJSON(object: any): CreatedFrom {\n switch (object) {\n case 0:\n case \"CREATED_FROM_UNSET\":\n return CreatedFrom.CREATED_FROM_UNSET;\n case 1:\n case \"REMOTE_API_ADMIN\":\n return CreatedFrom.REMOTE_API_ADMIN;\n case 2:\n case \"MY_LENSES\":\n return CreatedFrom.MY_LENSES;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return CreatedFrom.UNRECOGNIZED;\n }\n}\n\nexport function createdFromToNumber(object: CreatedFrom): number {\n switch (object) {\n case CreatedFrom.CREATED_FROM_UNSET:\n return 0;\n case CreatedFrom.REMOTE_API_ADMIN:\n return 1;\n case CreatedFrom.MY_LENSES:\n return 2;\n case CreatedFrom.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** What platform this spec is targeting */\nexport enum TargetPlatform {\n /** TARGET_PLATFORM_UNSET - Invalid value */\n TARGET_PLATFORM_UNSET = \"TARGET_PLATFORM_UNSET\",\n /** SNAPCHAT - Accessible to lenses on Snapchat */\n SNAPCHAT = \"SNAPCHAT\",\n /** SPECTACLES - Accessible to lenses on Spectacles */\n SPECTACLES = \"SPECTACLES\",\n /** CAMERA_KIT - Accessible to CameraKit */\n CAMERA_KIT = \"CAMERA_KIT\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function targetPlatformFromJSON(object: any): TargetPlatform {\n switch (object) {\n case 0:\n case \"TARGET_PLATFORM_UNSET\":\n return TargetPlatform.TARGET_PLATFORM_UNSET;\n case 1:\n case \"SNAPCHAT\":\n return TargetPlatform.SNAPCHAT;\n case 2:\n case \"SPECTACLES\":\n return TargetPlatform.SPECTACLES;\n case 3:\n case \"CAMERA_KIT\":\n return TargetPlatform.CAMERA_KIT;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return TargetPlatform.UNRECOGNIZED;\n }\n}\n\nexport function targetPlatformToNumber(object: TargetPlatform): number {\n switch (object) {\n case TargetPlatform.TARGET_PLATFORM_UNSET:\n return 0;\n case TargetPlatform.SNAPCHAT:\n return 1;\n case TargetPlatform.SPECTACLES:\n return 2;\n case TargetPlatform.CAMERA_KIT:\n return 3;\n case TargetPlatform.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Defines which api access level the lens has: https://snapchat.quip.com/RS86Adtd8lZI */\nexport enum RestrictedJsApiPermission {\n /** PERMISSION_UNSET - Invalid value */\n PERMISSION_UNSET = \"PERMISSION_UNSET\",\n /** USER_DATA - Lenses that use this API can access user data */\n USER_DATA = \"USER_DATA\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function restrictedJsApiPermissionFromJSON(object: any): RestrictedJsApiPermission {\n switch (object) {\n case 0:\n case \"PERMISSION_UNSET\":\n return RestrictedJsApiPermission.PERMISSION_UNSET;\n case 1:\n case \"USER_DATA\":\n return RestrictedJsApiPermission.USER_DATA;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RestrictedJsApiPermission.UNRECOGNIZED;\n }\n}\n\nexport function restrictedJsApiPermissionToNumber(object: RestrictedJsApiPermission): number {\n switch (object) {\n case RestrictedJsApiPermission.PERMISSION_UNSET:\n return 0;\n case RestrictedJsApiPermission.USER_DATA:\n return 1;\n case RestrictedJsApiPermission.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** (only for internal API endpoints) Possible use cases for user location */\nexport enum UserLocationUseCase {\n /** USE_CASE_UNSET - Undefined use case */\n USE_CASE_UNSET = \"USE_CASE_UNSET\",\n /** WEATHER - Weather info in user area (zoom level 10) */\n WEATHER = \"WEATHER\",\n /** PLACES - Finding nearby places (zoom level 18) */\n PLACES = \"PLACES\",\n /** PLACES_COARSE - Finding nearby places at a more coarse level (zoom level 17) */\n PLACES_COARSE = \"PLACES_COARSE\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function userLocationUseCaseFromJSON(object: any): UserLocationUseCase {\n switch (object) {\n case 0:\n case \"USE_CASE_UNSET\":\n return UserLocationUseCase.USE_CASE_UNSET;\n case 1:\n case \"WEATHER\":\n return UserLocationUseCase.WEATHER;\n case 2:\n case \"PLACES\":\n return UserLocationUseCase.PLACES;\n case 3:\n case \"PLACES_COARSE\":\n return UserLocationUseCase.PLACES_COARSE;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return UserLocationUseCase.UNRECOGNIZED;\n }\n}\n\nexport function userLocationUseCaseToNumber(object: UserLocationUseCase): number {\n switch (object) {\n case UserLocationUseCase.USE_CASE_UNSET:\n return 0;\n case UserLocationUseCase.WEATHER:\n return 1;\n case UserLocationUseCase.PLACES:\n return 2;\n case UserLocationUseCase.PLACES_COARSE:\n return 3;\n case UserLocationUseCase.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Defines how a parameter is injected into an HTTP request */\nexport interface RemoteApiHttpRequestParameter {\n /** Unique name of the parameter */\n name: string;\n /** Location of the parameter */\n location: RemoteApiHttpRequestParameter_ParameterLocation;\n /** Is parameter optional */\n optional: boolean;\n /**\n * (optional) Name of the parameter that will be used to construct the request (in query/headers/path).\n * `name` is used by clients to fill in the parameters in the request, whereas\n * `external_name` is what is used in the outgoing API request by the proxy.\n * If empty, `external_name` is assumed to be the same as `name`.\n */\n externalName: string;\n /**\n * Default value if the parameter is not set. Useful for \"standard\" headers like content-type\n * and other similar cases. If a default value is provided, the parameter will be sent with every request.\n * Required for constant parameters.\n */\n defaultValue: string;\n /**\n * Constant parameters have the same predefined value for all requests and\n * are always set by the proxy. Not allowed to be overridden by the caller.\n */\n constant: boolean;\n}\n\n/** Possible location of a parameter */\nexport enum RemoteApiHttpRequestParameter_ParameterLocation {\n /** LOCATION_UNSET - Undefined location */\n LOCATION_UNSET = \"LOCATION_UNSET\",\n /** QUERY - Parameters that appear in the URL query */\n QUERY = \"QUERY\",\n /** HEADER - Parameters that appear in the HTTP request header */\n HEADER = \"HEADER\",\n /** PATH - Parameters that appear in the URL path (for parameterized path only) */\n PATH = \"PATH\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiHttpRequestParameter_ParameterLocationFromJSON(\n object: any,\n): RemoteApiHttpRequestParameter_ParameterLocation {\n switch (object) {\n case 0:\n case \"LOCATION_UNSET\":\n return RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET;\n case 1:\n case \"QUERY\":\n return RemoteApiHttpRequestParameter_ParameterLocation.QUERY;\n case 2:\n case \"HEADER\":\n return RemoteApiHttpRequestParameter_ParameterLocation.HEADER;\n case 3:\n case \"PATH\":\n return RemoteApiHttpRequestParameter_ParameterLocation.PATH;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiHttpRequestParameter_ParameterLocation.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiHttpRequestParameter_ParameterLocationToNumber(\n object: RemoteApiHttpRequestParameter_ParameterLocation,\n): number {\n switch (object) {\n case RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET:\n return 0;\n case RemoteApiHttpRequestParameter_ParameterLocation.QUERY:\n return 1;\n case RemoteApiHttpRequestParameter_ParameterLocation.HEADER:\n return 2;\n case RemoteApiHttpRequestParameter_ParameterLocation.PATH:\n return 3;\n case RemoteApiHttpRequestParameter_ParameterLocation.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** (only for PROTO endpoints) Represents names of fields in a proto response, as well as an optional macro value */\nexport interface RemoteApiHttpResponseParameter {\n /** Unique name of the parameter */\n name: string;\n /** Whether or not we want to expose this parameter in the final API response to user */\n hidden: boolean;\n /** Specific macro values indicate certain parameters and types that we want to map this proto field to. */\n macroValue: string;\n}\n\n/** Metadata for remote API endpoints */\nexport interface RemoteApiEndpointMetadata {\n /** Human-readable name for the endpoint */\n name: string;\n /** Description that may include links to documentation, etc. */\n description: string;\n}\n\n/** Determines how the proxy should cache third party responses */\nexport interface RemoteApiCachingConfig {\n /** When to cache */\n cacheStrategy: RemoteApiCacheStrategy;\n /** Which TTL to use when caching */\n ttlStrategy: RemoteApiCacheTTLStrategy;\n /** Custom TTL override value */\n ttlSec: string;\n}\n\n/** Defines a remote API HTTP endpoint */\nexport interface RemoteApiHttpEndpoint {\n /** URL path of the endpoint; could be fixed or parameterized */\n path: string;\n /** HTTP methods allowed for requests to this endpoint */\n methods: RemoteApiHttpEndpoint_HttpRequestMethod[];\n /** Parameters allowed for requests to this endpoint; required if path is parameterized */\n parameters: RemoteApiHttpRequestParameter[];\n /** Metadata */\n metadata:\n | RemoteApiEndpointMetadata\n | undefined;\n /** ID used by clients to refer to this endpoint */\n refId: string;\n /** Type of the endpoint */\n type: RemoteApiEndpointType;\n /** Serialized protobuf descriptor containing request and response types */\n protoDescriptor: Uint8Array;\n /** (only for PROTO endpoints) Request proto message type name */\n requestType: string;\n /** (only for PROTO endpoints) Response proto message type name */\n responseType: string;\n /** (only for internal API endpoints) Whether the API uses internal proxy to get user location */\n usesLocationProxy: boolean;\n /** Caching config */\n cachingConfig:\n | RemoteApiCachingConfig\n | undefined;\n /** (only for internal API endpoints) User location use case */\n userLocationUseCase: UserLocationUseCase;\n /** Endpoint documentation link (optional) */\n documentationLink: string;\n /** Endpoint use case description (optional) */\n description: string;\n /** (only for PROTO endpoints) Used to configure visibility/macros of response proto fields */\n responseParameters: RemoteApiHttpResponseParameter[];\n /**\n * Validate body through Abuse Language Detection service before making request\n *\n * @deprecated\n */\n reqAldRequestValidation: boolean;\n /**\n * Validate body through Abuse Language Detection service before returning response\n *\n * @deprecated\n */\n reqAldResponseValidation: boolean;\n /** Which ALD context window to use for validation */\n aldContextWindow: string;\n /** Which types of content in the request to run through ALD */\n aldRequestConfigs: AldRequestValidationConfig[];\n /** Which types of content in the response to run through ALD */\n aldResponseConfigs: AldResponseValidationConfig[];\n}\n\n/** Possible HTTP request method on an endpoint */\nexport enum RemoteApiHttpEndpoint_HttpRequestMethod {\n /** METHOD_UNSET - Undefined method */\n METHOD_UNSET = \"METHOD_UNSET\",\n /** GET - HTTP GET */\n GET = \"GET\",\n /** POST - HTTP POST */\n POST = \"POST\",\n /** PUT - HTTP PUT */\n PUT = \"PUT\",\n /** DELETE - HTTP DELETE */\n DELETE = \"DELETE\",\n /** PATCH - HTTP PATCH */\n PATCH = \"PATCH\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiHttpEndpoint_HttpRequestMethodFromJSON(object: any): RemoteApiHttpEndpoint_HttpRequestMethod {\n switch (object) {\n case 0:\n case \"METHOD_UNSET\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.METHOD_UNSET;\n case 1:\n case \"GET\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.GET;\n case 2:\n case \"POST\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.POST;\n case 3:\n case \"PUT\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.PUT;\n case 4:\n case \"DELETE\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.DELETE;\n case 5:\n case \"PATCH\":\n return RemoteApiHttpEndpoint_HttpRequestMethod.PATCH;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiHttpEndpoint_HttpRequestMethod.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiHttpEndpoint_HttpRequestMethodToNumber(\n object: RemoteApiHttpEndpoint_HttpRequestMethod,\n): number {\n switch (object) {\n case RemoteApiHttpEndpoint_HttpRequestMethod.METHOD_UNSET:\n return 0;\n case RemoteApiHttpEndpoint_HttpRequestMethod.GET:\n return 1;\n case RemoteApiHttpEndpoint_HttpRequestMethod.POST:\n return 2;\n case RemoteApiHttpEndpoint_HttpRequestMethod.PUT:\n return 3;\n case RemoteApiHttpEndpoint_HttpRequestMethod.DELETE:\n return 4;\n case RemoteApiHttpEndpoint_HttpRequestMethod.PATCH:\n return 5;\n case RemoteApiHttpEndpoint_HttpRequestMethod.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Defines a remote API gRPC endpoint */\nexport interface RemoteApiGrpcEndpoint {\n /** Symbol of target method in the format of package.service.method */\n methodSymbol: string;\n /** ID used by clients to refer to this endpoint */\n refId: string;\n /** Request proto message type name */\n requestType: string;\n /** Response proto message type name */\n responseType: string;\n /** (only for internal API endpoints) Whether the API uses internal proxy to get user location */\n usesLocationProxy: boolean;\n /** (only for internal API endpoints) User location use case */\n userLocationUseCase: UserLocationUseCase;\n /** Endpoint documentation link (optional) */\n documentationLink: string;\n /** Endpoint use case description (optional) */\n description: string;\n /** Used to configure visibility/macros of response proto fields */\n responseParameters: RemoteApiGrpcResponseParameter[];\n /** Serialized protobuf descriptor containing request and response types */\n protoDescriptor: Uint8Array;\n /** Request parameters for this gRPC endpoint (used to configure macros/optional fields) */\n requestParameters: RemoteApiGrpcRequestParameter[];\n}\n\n/** Represents names of fields in a proto response, as well as an optional macro value */\nexport interface RemoteApiGrpcResponseParameter {\n /** Unique name of the parameter */\n name: string;\n /** Whether or not we want to expose this parameter in the final API response to user */\n hidden: boolean;\n /** Specific macro values indicate certain parameters and types that we want to map this proto field to. */\n macroValue: string;\n}\n\n/** Defines how a parameter is injected into an gRPC request */\nexport interface RemoteApiGrpcRequestParameter {\n /** Unique name of the parameter */\n name: string;\n /** Is parameter optional */\n optional: boolean;\n /**\n * Default value if the parameter is not set. Useful for \"standard\" headers like content-type\n * and other similar cases. If a default value is provided, the parameter will be sent with every request.\n * Required for constant parameters.\n */\n defaultValue: string;\n /**\n * Constant parameters have the same predefined value for all requests and\n * are always set by the proxy. Not allowed to be overridden by the caller.\n */\n constant: boolean;\n}\n\n/** Defines OAuth2-related configuration for a remote API */\nexport interface RemoteApiOAuth2Config {\n /** OAuth2 client identifier: https://tools.ietf.org/html/rfc6749#section-2.2 */\n clientId: string;\n /** OAuth2 grant type required for the remote API */\n grantType: RemoteApiOAuth2Config_GrantType;\n /** https://tools.ietf.org/html/rfc6749#section-3.1 */\n authorizationUrl: string;\n /** https://tools.ietf.org/html/rfc6749#section-3.2 */\n tokenUrl: string;\n /** https://tools.ietf.org/html/rfc6749#section-3.3 */\n scope: string;\n /** https://datatracker.ietf.org/doc/html/rfc6749#section-2.3.1 */\n clientSecret: string;\n}\n\n/** OAuth2 grant types supported by the remote-service feature */\nexport enum RemoteApiOAuth2Config_GrantType {\n /** GRANT_TYPE_UNSET - Undefined grant type */\n GRANT_TYPE_UNSET = \"GRANT_TYPE_UNSET\",\n /** AUTHORIZATION_CODE - https://datatracker.ietf.org/doc/html/rfc6749#section-4.1 */\n AUTHORIZATION_CODE = \"AUTHORIZATION_CODE\",\n /** AUTHORIZATION_CODE_WITH_PKCE - https://tools.ietf.org/html/rfc7636 */\n AUTHORIZATION_CODE_WITH_PKCE = \"AUTHORIZATION_CODE_WITH_PKCE\",\n /** IMPLICIT - https://tools.ietf.org/html/rfc6749#section-4.2 */\n IMPLICIT = \"IMPLICIT\",\n /** CLIENT_CREDENTIALS - https://tools.ietf.org/html/rfc6749#section-4.4 */\n CLIENT_CREDENTIALS = \"CLIENT_CREDENTIALS\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiOAuth2Config_GrantTypeFromJSON(object: any): RemoteApiOAuth2Config_GrantType {\n switch (object) {\n case 0:\n case \"GRANT_TYPE_UNSET\":\n return RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET;\n case 1:\n case \"AUTHORIZATION_CODE\":\n return RemoteApiOAuth2Config_GrantType.AUTHORIZATION_CODE;\n case 2:\n case \"AUTHORIZATION_CODE_WITH_PKCE\":\n return RemoteApiOAuth2Config_GrantType.AUTHORIZATION_CODE_WITH_PKCE;\n case 3:\n case \"IMPLICIT\":\n return RemoteApiOAuth2Config_GrantType.IMPLICIT;\n case 4:\n case \"CLIENT_CREDENTIALS\":\n return RemoteApiOAuth2Config_GrantType.CLIENT_CREDENTIALS;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiOAuth2Config_GrantType.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiOAuth2Config_GrantTypeToNumber(object: RemoteApiOAuth2Config_GrantType): number {\n switch (object) {\n case RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET:\n return 0;\n case RemoteApiOAuth2Config_GrantType.AUTHORIZATION_CODE:\n return 1;\n case RemoteApiOAuth2Config_GrantType.AUTHORIZATION_CODE_WITH_PKCE:\n return 2;\n case RemoteApiOAuth2Config_GrantType.IMPLICIT:\n return 3;\n case RemoteApiOAuth2Config_GrantType.CLIENT_CREDENTIALS:\n return 4;\n case RemoteApiOAuth2Config_GrantType.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Defines security-related configuration of a remote API */\nexport interface RemoteApiSecurityConfig {\n /** Security scheme of the remote API */\n securityScheme: RemoteApiSecurityConfig_SecurityScheme;\n configs?:\n | { $case: \"apiKeyParam\"; apiKeyParam: RemoteApiHttpRequestParameter }\n | { $case: \"oauth2Config\"; oauth2Config: RemoteApiOAuth2Config }\n | { $case: \"apiKeyConfig\"; apiKeyConfig: RemoteApiKeyConfig }\n | undefined;\n}\n\n/** Possible security schemes for a remote API */\nexport enum RemoteApiSecurityConfig_SecurityScheme {\n /** SCHEME_UNSET - Undefined scheme */\n SCHEME_UNSET = \"SCHEME_UNSET\",\n /** NONE - No authentication is required */\n NONE = \"NONE\",\n /** SNAP_TOKEN - Internal snap services using snap token */\n SNAP_TOKEN = \"SNAP_TOKEN\",\n /** API_KEY - API that requires an api key */\n API_KEY = \"API_KEY\",\n /** OAUTH2 - API that requires OAuth2 */\n OAUTH2 = \"OAUTH2\",\n UNRECOGNIZED = \"UNRECOGNIZED\",\n}\n\nexport function remoteApiSecurityConfig_SecuritySchemeFromJSON(object: any): RemoteApiSecurityConfig_SecurityScheme {\n switch (object) {\n case 0:\n case \"SCHEME_UNSET\":\n return RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET;\n case 1:\n case \"NONE\":\n return RemoteApiSecurityConfig_SecurityScheme.NONE;\n case 2:\n case \"SNAP_TOKEN\":\n return RemoteApiSecurityConfig_SecurityScheme.SNAP_TOKEN;\n case 3:\n case \"API_KEY\":\n return RemoteApiSecurityConfig_SecurityScheme.API_KEY;\n case 4:\n case \"OAUTH2\":\n return RemoteApiSecurityConfig_SecurityScheme.OAUTH2;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return RemoteApiSecurityConfig_SecurityScheme.UNRECOGNIZED;\n }\n}\n\nexport function remoteApiSecurityConfig_SecuritySchemeToNumber(object: RemoteApiSecurityConfig_SecurityScheme): number {\n switch (object) {\n case RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET:\n return 0;\n case RemoteApiSecurityConfig_SecurityScheme.NONE:\n return 1;\n case RemoteApiSecurityConfig_SecurityScheme.SNAP_TOKEN:\n return 2;\n case RemoteApiSecurityConfig_SecurityScheme.API_KEY:\n return 3;\n case RemoteApiSecurityConfig_SecurityScheme.OAUTH2:\n return 4;\n case RemoteApiSecurityConfig_SecurityScheme.UNRECOGNIZED:\n default:\n return -1;\n }\n}\n\n/** Defines an API key-based security config */\nexport interface RemoteApiKeyConfig {\n /** Parameters through which secrets are provided to the API */\n params: RemoteApiHttpRequestParameter[];\n /** Secret values fetched from storage, keyed by param name */\n secretValues: { [key: string]: string };\n}\n\nexport interface RemoteApiKeyConfig_SecretValuesEntry {\n key: string;\n value: string;\n}\n\n/** Remote API spec metadata for internal usage */\nexport interface RemoteApiSpecMetadata {\n /** Human-readable name of the spec */\n name: string;\n /** Who created the spec (email) */\n author: string;\n /** When the spec was created (UTC timestamp) */\n creationTimeSec: string;\n /** When the spec was last edited (UTC timestamp) */\n lastEditTimeSec: string;\n /** Who last edited the spec (email) */\n lastEditor: string;\n /** When the spec was last reviewed (UTC timestamp) */\n reviewTimeSec: string;\n /** Who last reviewed the spec (email) */\n reviewer: string;\n /**\n * ID of the secret that contains they API key(s) or other authentication data\n * in Spookey or another secret storage\n */\n secretId: string;\n /** ID of the API spec, from which this one was derived (if any) */\n derivedFromSpecId: string;\n /** Where was this API spec created from */\n createdFrom: CreatedFrom;\n /** URL containing the icon of the API (e.g. in Bolt) */\n iconUrl: string;\n /** Company or person providing the API */\n providerName: string;\n /** Textual description for the API that may include links to documentation, etc. */\n description: string;\n /** Link to API documentation */\n documentationUrl: string;\n /** Link to internal quip documenting the API */\n internalApiQuipUrl: string;\n /** Spec version */\n version: string;\n}\n\n/** Defines a remote service with a list of endpoints and a single security configuration */\nexport interface RemoteApiSpec {\n /** ID of the API spec */\n id: string;\n /** List of HTTP endpoints allowed by this API spec */\n endpoints: RemoteApiHttpEndpoint[];\n /** Security configuration of this API spec */\n securityConfig:\n | RemoteApiSecurityConfig\n | undefined;\n /** Hostname or hostname and port in format of host:port */\n host: string;\n /** Defines if secured connection (HTTPS) must be forced */\n tlsRequired: boolean;\n /** Specifies caller's max request size in bytes for any of defined endpoints (optional value) */\n maxRequestSizeBytes: number;\n /** Specifies calle's max response size in bytes for any of defined endpoints (optional value) */\n maxResponseSizeBytes: number;\n /** Specifies calle's max response time in millis for any of defined endpoints (optional value) */\n maxResponseTimeMillis: number;\n /** Approval state of the spec */\n approvalState: SpecApprovalState;\n /** Visibility of the spec */\n visibility: SpecVisibility;\n /** Metadata */\n metadata:\n | RemoteApiSpecMetadata\n | undefined;\n /** Target platform of the spec */\n targetPlatforms: TargetPlatform[];\n /** List of user IDs that are given visibility to a spec (optional value) */\n customVisibilityUsers: string[];\n /** Whether or not this API actually goes through the remote-api service vs a local client handler (camera kit for example) */\n localOnly: boolean;\n /** Approximate (within 1d) time that the spec was last accessed (UTC timestamp) */\n lastAccessTimeSec: string;\n /** List of permissions. Empty list indicates no permission is granted. */\n restrictedJsApiPermissions: RestrictedJsApiPermission[];\n /** Minimum Lens Studio version that this spec will be shown in. (e.g. \"4.10.0.0\") */\n minLensStudioVersion: string;\n /** Whether or not this spec is restricted from being used in a sponsored lens */\n sponsoredLensRestricted: boolean;\n /** List of user IDs that are given edit permissions to a spec (optional value) */\n editPermissionUsers: string[];\n /** List of gRPC endpoints allowed by this API spec */\n grpcEndpoints: RemoteApiGrpcEndpoint[];\n /** (CameraKit Only) Snap Kit app ID is a metadata field that associates the spec with camera kit app */\n snapkitAppId: string;\n /** (CameraKit Only) - Whether this API uses the Camera Kit built-in local processor or the processor provided by a Camera Kit partner */\n useBuiltinLocalProcessor: boolean;\n /** An id of organization who own the spec */\n orgId: string;\n /** Whether or not we allow link redirects (needs to be trusted API source) */\n allowRedirects: boolean;\n}\n\n/** [Deprecated] Remote API spec set metadata for internal usage (services within Snap) */\nexport interface RemoteApiSpecSetMetadata {\n /** Human-readable name of the API (e.g. \"Weather API\") */\n name: string;\n /** URL containing the icon of the API (e.g. in Bolt) */\n iconUrl: string;\n /** Company or person providing the API */\n providerName: string;\n /** Textual description for the API that may include links to documentation, etc. */\n description: string;\n /** Who created the spec set (email) */\n author: string;\n /** When the spec set was created (UTC timestamp) */\n creationTimeSec: string;\n /** When the spec set was last edited (UTC timestamp) */\n lastEditTimeSec: string;\n /** Who last edited the spec set (email) */\n lastEditor: string;\n /** Link to API documentation */\n documentationUrl: string;\n /** Where was this API spec created from */\n createdFrom: CreatedFrom;\n}\n\n/** [Deprecated] Defines a remote API as a collection of services that are meant to be used together */\nexport interface RemoteApiSpecSet {\n /** ID of the spec set */\n id: string;\n /** Service specifications */\n specs: RemoteApiSpec[];\n /** Metadata */\n metadata:\n | RemoteApiSpecSetMetadata\n | undefined;\n /** Approximate (within 1d) time that the spec was last accessed (UTC timestamp) */\n lastAccessTimeSec: string;\n}\n\nfunction createBaseRemoteApiHttpRequestParameter(): RemoteApiHttpRequestParameter {\n return {\n name: \"\",\n location: RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET,\n optional: false,\n externalName: \"\",\n defaultValue: \"\",\n constant: false,\n };\n}\n\nexport const RemoteApiHttpRequestParameter: MessageFns<RemoteApiHttpRequestParameter> = {\n encode(message: RemoteApiHttpRequestParameter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.location !== RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET) {\n writer.uint32(16).int32(remoteApiHttpRequestParameter_ParameterLocationToNumber(message.location));\n }\n if (message.optional !== false) {\n writer.uint32(24).bool(message.optional);\n }\n if (message.externalName !== \"\") {\n writer.uint32(34).string(message.externalName);\n }\n if (message.defaultValue !== \"\") {\n writer.uint32(42).string(message.defaultValue);\n }\n if (message.constant !== false) {\n writer.uint32(48).bool(message.constant);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiHttpRequestParameter {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiHttpRequestParameter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.location = remoteApiHttpRequestParameter_ParameterLocationFromJSON(reader.int32());\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.optional = reader.bool();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.externalName = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.defaultValue = reader.string();\n continue;\n }\n case 6: {\n if (tag !== 48) {\n break;\n }\n\n message.constant = reader.bool();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiHttpRequestParameter>, I>>(base?: I): RemoteApiHttpRequestParameter {\n return RemoteApiHttpRequestParameter.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiHttpRequestParameter>, I>>(\n object: I,\n ): RemoteApiHttpRequestParameter {\n const message = createBaseRemoteApiHttpRequestParameter();\n message.name = object.name ?? \"\";\n message.location = object.location ?? RemoteApiHttpRequestParameter_ParameterLocation.LOCATION_UNSET;\n message.optional = object.optional ?? false;\n message.externalName = object.externalName ?? \"\";\n message.defaultValue = object.defaultValue ?? \"\";\n message.constant = object.constant ?? false;\n return message;\n },\n};\n\nfunction createBaseRemoteApiHttpResponseParameter(): RemoteApiHttpResponseParameter {\n return { name: \"\", hidden: false, macroValue: \"\" };\n}\n\nexport const RemoteApiHttpResponseParameter: MessageFns<RemoteApiHttpResponseParameter> = {\n encode(message: RemoteApiHttpResponseParameter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.hidden !== false) {\n writer.uint32(16).bool(message.hidden);\n }\n if (message.macroValue !== \"\") {\n writer.uint32(26).string(message.macroValue);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiHttpResponseParameter {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiHttpResponseParameter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.hidden = reader.bool();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.macroValue = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiHttpResponseParameter>, I>>(base?: I): RemoteApiHttpResponseParameter {\n return RemoteApiHttpResponseParameter.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiHttpResponseParameter>, I>>(\n object: I,\n ): RemoteApiHttpResponseParameter {\n const message = createBaseRemoteApiHttpResponseParameter();\n message.name = object.name ?? \"\";\n message.hidden = object.hidden ?? false;\n message.macroValue = object.macroValue ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiEndpointMetadata(): RemoteApiEndpointMetadata {\n return { name: \"\", description: \"\" };\n}\n\nexport const RemoteApiEndpointMetadata: MessageFns<RemoteApiEndpointMetadata> = {\n encode(message: RemoteApiEndpointMetadata, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.description !== \"\") {\n writer.uint32(18).string(message.description);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiEndpointMetadata {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiEndpointMetadata();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.description = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiEndpointMetadata>, I>>(base?: I): RemoteApiEndpointMetadata {\n return RemoteApiEndpointMetadata.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiEndpointMetadata>, I>>(object: I): RemoteApiEndpointMetadata {\n const message = createBaseRemoteApiEndpointMetadata();\n message.name = object.name ?? \"\";\n message.description = object.description ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiCachingConfig(): RemoteApiCachingConfig {\n return {\n cacheStrategy: RemoteApiCacheStrategy.CS_UNSET,\n ttlStrategy: RemoteApiCacheTTLStrategy.CTS_UNSET,\n ttlSec: \"0\",\n };\n}\n\nexport const RemoteApiCachingConfig: MessageFns<RemoteApiCachingConfig> = {\n encode(message: RemoteApiCachingConfig, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.cacheStrategy !== RemoteApiCacheStrategy.CS_UNSET) {\n writer.uint32(8).int32(remoteApiCacheStrategyToNumber(message.cacheStrategy));\n }\n if (message.ttlStrategy !== RemoteApiCacheTTLStrategy.CTS_UNSET) {\n writer.uint32(16).int32(remoteApiCacheTTLStrategyToNumber(message.ttlStrategy));\n }\n if (message.ttlSec !== \"0\") {\n writer.uint32(24).int64(message.ttlSec);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiCachingConfig {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiCachingConfig();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.cacheStrategy = remoteApiCacheStrategyFromJSON(reader.int32());\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.ttlStrategy = remoteApiCacheTTLStrategyFromJSON(reader.int32());\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.ttlSec = reader.int64().toString();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiCachingConfig>, I>>(base?: I): RemoteApiCachingConfig {\n return RemoteApiCachingConfig.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiCachingConfig>, I>>(object: I): RemoteApiCachingConfig {\n const message = createBaseRemoteApiCachingConfig();\n message.cacheStrategy = object.cacheStrategy ?? RemoteApiCacheStrategy.CS_UNSET;\n message.ttlStrategy = object.ttlStrategy ?? RemoteApiCacheTTLStrategy.CTS_UNSET;\n message.ttlSec = object.ttlSec ?? \"0\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiHttpEndpoint(): RemoteApiHttpEndpoint {\n return {\n path: \"\",\n methods: [],\n parameters: [],\n metadata: undefined,\n refId: \"\",\n type: RemoteApiEndpointType.TYPE_UNSET,\n protoDescriptor: new Uint8Array(0),\n requestType: \"\",\n responseType: \"\",\n usesLocationProxy: false,\n cachingConfig: undefined,\n userLocationUseCase: UserLocationUseCase.USE_CASE_UNSET,\n documentationLink: \"\",\n description: \"\",\n responseParameters: [],\n reqAldRequestValidation: false,\n reqAldResponseValidation: false,\n aldContextWindow: \"\",\n aldRequestConfigs: [],\n aldResponseConfigs: [],\n };\n}\n\nexport const RemoteApiHttpEndpoint: MessageFns<RemoteApiHttpEndpoint> = {\n encode(message: RemoteApiHttpEndpoint, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.path !== \"\") {\n writer.uint32(10).string(message.path);\n }\n writer.uint32(18).fork();\n for (const v of message.methods) {\n writer.int32(remoteApiHttpEndpoint_HttpRequestMethodToNumber(v));\n }\n writer.join();\n for (const v of message.parameters) {\n RemoteApiHttpRequestParameter.encode(v!, writer.uint32(26).fork()).join();\n }\n if (message.metadata !== undefined) {\n RemoteApiEndpointMetadata.encode(message.metadata, writer.uint32(34).fork()).join();\n }\n if (message.refId !== \"\") {\n writer.uint32(42).string(message.refId);\n }\n if (message.type !== RemoteApiEndpointType.TYPE_UNSET) {\n writer.uint32(48).int32(remoteApiEndpointTypeToNumber(message.type));\n }\n if (message.protoDescriptor.length !== 0) {\n writer.uint32(58).bytes(message.protoDescriptor);\n }\n if (message.requestType !== \"\") {\n writer.uint32(66).string(message.requestType);\n }\n if (message.responseType !== \"\") {\n writer.uint32(74).string(message.responseType);\n }\n if (message.usesLocationProxy !== false) {\n writer.uint32(80).bool(message.usesLocationProxy);\n }\n if (message.cachingConfig !== undefined) {\n RemoteApiCachingConfig.encode(message.cachingConfig, writer.uint32(90).fork()).join();\n }\n if (message.userLocationUseCase !== UserLocationUseCase.USE_CASE_UNSET) {\n writer.uint32(96).int32(userLocationUseCaseToNumber(message.userLocationUseCase));\n }\n if (message.documentationLink !== \"\") {\n writer.uint32(106).string(message.documentationLink);\n }\n if (message.description !== \"\") {\n writer.uint32(114).string(message.description);\n }\n for (const v of message.responseParameters) {\n RemoteApiHttpResponseParameter.encode(v!, writer.uint32(122).fork()).join();\n }\n if (message.reqAldRequestValidation !== false) {\n writer.uint32(128).bool(message.reqAldRequestValidation);\n }\n if (message.reqAldResponseValidation !== false) {\n writer.uint32(136).bool(message.reqAldResponseValidation);\n }\n if (message.aldContextWindow !== \"\") {\n writer.uint32(146).string(message.aldContextWindow);\n }\n writer.uint32(154).fork();\n for (const v of message.aldRequestConfigs) {\n writer.int32(aldRequestValidationConfigToNumber(v));\n }\n writer.join();\n writer.uint32(162).fork();\n for (const v of message.aldResponseConfigs) {\n writer.int32(aldResponseValidationConfigToNumber(v));\n }\n writer.join();\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiHttpEndpoint {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiHttpEndpoint();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.path = reader.string();\n continue;\n }\n case 2: {\n if (tag === 16) {\n message.methods.push(remoteApiHttpEndpoint_HttpRequestMethodFromJSON(reader.int32()));\n\n continue;\n }\n\n if (tag === 18) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.methods.push(remoteApiHttpEndpoint_HttpRequestMethodFromJSON(reader.int32()));\n }\n\n continue;\n }\n\n break;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.parameters.push(RemoteApiHttpRequestParameter.decode(reader, reader.uint32()));\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.metadata = RemoteApiEndpointMetadata.decode(reader, reader.uint32());\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.refId = reader.string();\n continue;\n }\n case 6: {\n if (tag !== 48) {\n break;\n }\n\n message.type = remoteApiEndpointTypeFromJSON(reader.int32());\n continue;\n }\n case 7: {\n if (tag !== 58) {\n break;\n }\n\n message.protoDescriptor = reader.bytes();\n continue;\n }\n case 8: {\n if (tag !== 66) {\n break;\n }\n\n message.requestType = reader.string();\n continue;\n }\n case 9: {\n if (tag !== 74) {\n break;\n }\n\n message.responseType = reader.string();\n continue;\n }\n case 10: {\n if (tag !== 80) {\n break;\n }\n\n message.usesLocationProxy = reader.bool();\n continue;\n }\n case 11: {\n if (tag !== 90) {\n break;\n }\n\n message.cachingConfig = RemoteApiCachingConfig.decode(reader, reader.uint32());\n continue;\n }\n case 12: {\n if (tag !== 96) {\n break;\n }\n\n message.userLocationUseCase = userLocationUseCaseFromJSON(reader.int32());\n continue;\n }\n case 13: {\n if (tag !== 106) {\n break;\n }\n\n message.documentationLink = reader.string();\n continue;\n }\n case 14: {\n if (tag !== 114) {\n break;\n }\n\n message.description = reader.string();\n continue;\n }\n case 15: {\n if (tag !== 122) {\n break;\n }\n\n message.responseParameters.push(RemoteApiHttpResponseParameter.decode(reader, reader.uint32()));\n continue;\n }\n case 16: {\n if (tag !== 128) {\n break;\n }\n\n message.reqAldRequestValidation = reader.bool();\n continue;\n }\n case 17: {\n if (tag !== 136) {\n break;\n }\n\n message.reqAldResponseValidation = reader.bool();\n continue;\n }\n case 18: {\n if (tag !== 146) {\n break;\n }\n\n message.aldContextWindow = reader.string();\n continue;\n }\n case 19: {\n if (tag === 152) {\n message.aldRequestConfigs.push(aldRequestValidationConfigFromJSON(reader.int32()));\n\n continue;\n }\n\n if (tag === 154) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.aldRequestConfigs.push(aldRequestValidationConfigFromJSON(reader.int32()));\n }\n\n continue;\n }\n\n break;\n }\n case 20: {\n if (tag === 160) {\n message.aldResponseConfigs.push(aldResponseValidationConfigFromJSON(reader.int32()));\n\n continue;\n }\n\n if (tag === 162) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.aldResponseConfigs.push(aldResponseValidationConfigFromJSON(reader.int32()));\n }\n\n continue;\n }\n\n break;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiHttpEndpoint>, I>>(base?: I): RemoteApiHttpEndpoint {\n return RemoteApiHttpEndpoint.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiHttpEndpoint>, I>>(object: I): RemoteApiHttpEndpoint {\n const message = createBaseRemoteApiHttpEndpoint();\n message.path = object.path ?? \"\";\n message.methods = object.methods?.map((e) => e) || [];\n message.parameters = object.parameters?.map((e) => RemoteApiHttpRequestParameter.fromPartial(e)) || [];\n message.metadata = (object.metadata !== undefined && object.metadata !== null)\n ? RemoteApiEndpointMetadata.fromPartial(object.metadata)\n : undefined;\n message.refId = object.refId ?? \"\";\n message.type = object.type ?? RemoteApiEndpointType.TYPE_UNSET;\n message.protoDescriptor = object.protoDescriptor ?? new Uint8Array(0);\n message.requestType = object.requestType ?? \"\";\n message.responseType = object.responseType ?? \"\";\n message.usesLocationProxy = object.usesLocationProxy ?? false;\n message.cachingConfig = (object.cachingConfig !== undefined && object.cachingConfig !== null)\n ? RemoteApiCachingConfig.fromPartial(object.cachingConfig)\n : undefined;\n message.userLocationUseCase = object.userLocationUseCase ?? UserLocationUseCase.USE_CASE_UNSET;\n message.documentationLink = object.documentationLink ?? \"\";\n message.description = object.description ?? \"\";\n message.responseParameters = object.responseParameters?.map((e) => RemoteApiHttpResponseParameter.fromPartial(e)) ||\n [];\n message.reqAldRequestValidation = object.reqAldRequestValidation ?? false;\n message.reqAldResponseValidation = object.reqAldResponseValidation ?? false;\n message.aldContextWindow = object.aldContextWindow ?? \"\";\n message.aldRequestConfigs = object.aldRequestConfigs?.map((e) => e) || [];\n message.aldResponseConfigs = object.aldResponseConfigs?.map((e) => e) || [];\n return message;\n },\n};\n\nfunction createBaseRemoteApiGrpcEndpoint(): RemoteApiGrpcEndpoint {\n return {\n methodSymbol: \"\",\n refId: \"\",\n requestType: \"\",\n responseType: \"\",\n usesLocationProxy: false,\n userLocationUseCase: UserLocationUseCase.USE_CASE_UNSET,\n documentationLink: \"\",\n description: \"\",\n responseParameters: [],\n protoDescriptor: new Uint8Array(0),\n requestParameters: [],\n };\n}\n\nexport const RemoteApiGrpcEndpoint: MessageFns<RemoteApiGrpcEndpoint> = {\n encode(message: RemoteApiGrpcEndpoint, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.methodSymbol !== \"\") {\n writer.uint32(10).string(message.methodSymbol);\n }\n if (message.refId !== \"\") {\n writer.uint32(18).string(message.refId);\n }\n if (message.requestType !== \"\") {\n writer.uint32(26).string(message.requestType);\n }\n if (message.responseType !== \"\") {\n writer.uint32(34).string(message.responseType);\n }\n if (message.usesLocationProxy !== false) {\n writer.uint32(40).bool(message.usesLocationProxy);\n }\n if (message.userLocationUseCase !== UserLocationUseCase.USE_CASE_UNSET) {\n writer.uint32(48).int32(userLocationUseCaseToNumber(message.userLocationUseCase));\n }\n if (message.documentationLink !== \"\") {\n writer.uint32(58).string(message.documentationLink);\n }\n if (message.description !== \"\") {\n writer.uint32(66).string(message.description);\n }\n for (const v of message.responseParameters) {\n RemoteApiGrpcResponseParameter.encode(v!, writer.uint32(74).fork()).join();\n }\n if (message.protoDescriptor.length !== 0) {\n writer.uint32(82).bytes(message.protoDescriptor);\n }\n for (const v of message.requestParameters) {\n RemoteApiGrpcRequestParameter.encode(v!, writer.uint32(90).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiGrpcEndpoint {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiGrpcEndpoint();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.methodSymbol = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.refId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.requestType = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.responseType = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 40) {\n break;\n }\n\n message.usesLocationProxy = reader.bool();\n continue;\n }\n case 6: {\n if (tag !== 48) {\n break;\n }\n\n message.userLocationUseCase = userLocationUseCaseFromJSON(reader.int32());\n continue;\n }\n case 7: {\n if (tag !== 58) {\n break;\n }\n\n message.documentationLink = reader.string();\n continue;\n }\n case 8: {\n if (tag !== 66) {\n break;\n }\n\n message.description = reader.string();\n continue;\n }\n case 9: {\n if (tag !== 74) {\n break;\n }\n\n message.responseParameters.push(RemoteApiGrpcResponseParameter.decode(reader, reader.uint32()));\n continue;\n }\n case 10: {\n if (tag !== 82) {\n break;\n }\n\n message.protoDescriptor = reader.bytes();\n continue;\n }\n case 11: {\n if (tag !== 90) {\n break;\n }\n\n message.requestParameters.push(RemoteApiGrpcRequestParameter.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiGrpcEndpoint>, I>>(base?: I): RemoteApiGrpcEndpoint {\n return RemoteApiGrpcEndpoint.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiGrpcEndpoint>, I>>(object: I): RemoteApiGrpcEndpoint {\n const message = createBaseRemoteApiGrpcEndpoint();\n message.methodSymbol = object.methodSymbol ?? \"\";\n message.refId = object.refId ?? \"\";\n message.requestType = object.requestType ?? \"\";\n message.responseType = object.responseType ?? \"\";\n message.usesLocationProxy = object.usesLocationProxy ?? false;\n message.userLocationUseCase = object.userLocationUseCase ?? UserLocationUseCase.USE_CASE_UNSET;\n message.documentationLink = object.documentationLink ?? \"\";\n message.description = object.description ?? \"\";\n message.responseParameters = object.responseParameters?.map((e) => RemoteApiGrpcResponseParameter.fromPartial(e)) ||\n [];\n message.protoDescriptor = object.protoDescriptor ?? new Uint8Array(0);\n message.requestParameters = object.requestParameters?.map((e) => RemoteApiGrpcRequestParameter.fromPartial(e)) ||\n [];\n return message;\n },\n};\n\nfunction createBaseRemoteApiGrpcResponseParameter(): RemoteApiGrpcResponseParameter {\n return { name: \"\", hidden: false, macroValue: \"\" };\n}\n\nexport const RemoteApiGrpcResponseParameter: MessageFns<RemoteApiGrpcResponseParameter> = {\n encode(message: RemoteApiGrpcResponseParameter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.hidden !== false) {\n writer.uint32(16).bool(message.hidden);\n }\n if (message.macroValue !== \"\") {\n writer.uint32(26).string(message.macroValue);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiGrpcResponseParameter {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiGrpcResponseParameter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.hidden = reader.bool();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.macroValue = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiGrpcResponseParameter>, I>>(base?: I): RemoteApiGrpcResponseParameter {\n return RemoteApiGrpcResponseParameter.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiGrpcResponseParameter>, I>>(\n object: I,\n ): RemoteApiGrpcResponseParameter {\n const message = createBaseRemoteApiGrpcResponseParameter();\n message.name = object.name ?? \"\";\n message.hidden = object.hidden ?? false;\n message.macroValue = object.macroValue ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiGrpcRequestParameter(): RemoteApiGrpcRequestParameter {\n return { name: \"\", optional: false, defaultValue: \"\", constant: false };\n}\n\nexport const RemoteApiGrpcRequestParameter: MessageFns<RemoteApiGrpcRequestParameter> = {\n encode(message: RemoteApiGrpcRequestParameter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.optional !== false) {\n writer.uint32(16).bool(message.optional);\n }\n if (message.defaultValue !== \"\") {\n writer.uint32(26).string(message.defaultValue);\n }\n if (message.constant !== false) {\n writer.uint32(32).bool(message.constant);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiGrpcRequestParameter {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiGrpcRequestParameter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.optional = reader.bool();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.defaultValue = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.constant = reader.bool();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiGrpcRequestParameter>, I>>(base?: I): RemoteApiGrpcRequestParameter {\n return RemoteApiGrpcRequestParameter.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiGrpcRequestParameter>, I>>(\n object: I,\n ): RemoteApiGrpcRequestParameter {\n const message = createBaseRemoteApiGrpcRequestParameter();\n message.name = object.name ?? \"\";\n message.optional = object.optional ?? false;\n message.defaultValue = object.defaultValue ?? \"\";\n message.constant = object.constant ?? false;\n return message;\n },\n};\n\nfunction createBaseRemoteApiOAuth2Config(): RemoteApiOAuth2Config {\n return {\n clientId: \"\",\n grantType: RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET,\n authorizationUrl: \"\",\n tokenUrl: \"\",\n scope: \"\",\n clientSecret: \"\",\n };\n}\n\nexport const RemoteApiOAuth2Config: MessageFns<RemoteApiOAuth2Config> = {\n encode(message: RemoteApiOAuth2Config, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.clientId !== \"\") {\n writer.uint32(10).string(message.clientId);\n }\n if (message.grantType !== RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET) {\n writer.uint32(16).int32(remoteApiOAuth2Config_GrantTypeToNumber(message.grantType));\n }\n if (message.authorizationUrl !== \"\") {\n writer.uint32(26).string(message.authorizationUrl);\n }\n if (message.tokenUrl !== \"\") {\n writer.uint32(34).string(message.tokenUrl);\n }\n if (message.scope !== \"\") {\n writer.uint32(42).string(message.scope);\n }\n if (message.clientSecret !== \"\") {\n writer.uint32(50).string(message.clientSecret);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiOAuth2Config {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiOAuth2Config();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.clientId = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.grantType = remoteApiOAuth2Config_GrantTypeFromJSON(reader.int32());\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.authorizationUrl = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.tokenUrl = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.scope = reader.string();\n continue;\n }\n case 6: {\n if (tag !== 50) {\n break;\n }\n\n message.clientSecret = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiOAuth2Config>, I>>(base?: I): RemoteApiOAuth2Config {\n return RemoteApiOAuth2Config.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiOAuth2Config>, I>>(object: I): RemoteApiOAuth2Config {\n const message = createBaseRemoteApiOAuth2Config();\n message.clientId = object.clientId ?? \"\";\n message.grantType = object.grantType ?? RemoteApiOAuth2Config_GrantType.GRANT_TYPE_UNSET;\n message.authorizationUrl = object.authorizationUrl ?? \"\";\n message.tokenUrl = object.tokenUrl ?? \"\";\n message.scope = object.scope ?? \"\";\n message.clientSecret = object.clientSecret ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiSecurityConfig(): RemoteApiSecurityConfig {\n return { securityScheme: RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET, configs: undefined };\n}\n\nexport const RemoteApiSecurityConfig: MessageFns<RemoteApiSecurityConfig> = {\n encode(message: RemoteApiSecurityConfig, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.securityScheme !== RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET) {\n writer.uint32(8).int32(remoteApiSecurityConfig_SecuritySchemeToNumber(message.securityScheme));\n }\n switch (message.configs?.$case) {\n case \"apiKeyParam\":\n RemoteApiHttpRequestParameter.encode(message.configs.apiKeyParam, writer.uint32(18).fork()).join();\n break;\n case \"oauth2Config\":\n RemoteApiOAuth2Config.encode(message.configs.oauth2Config, writer.uint32(26).fork()).join();\n break;\n case \"apiKeyConfig\":\n RemoteApiKeyConfig.encode(message.configs.apiKeyConfig, writer.uint32(34).fork()).join();\n break;\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiSecurityConfig {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSecurityConfig();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.securityScheme = remoteApiSecurityConfig_SecuritySchemeFromJSON(reader.int32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.configs = {\n $case: \"apiKeyParam\",\n apiKeyParam: RemoteApiHttpRequestParameter.decode(reader, reader.uint32()),\n };\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.configs = {\n $case: \"oauth2Config\",\n oauth2Config: RemoteApiOAuth2Config.decode(reader, reader.uint32()),\n };\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.configs = { $case: \"apiKeyConfig\", apiKeyConfig: RemoteApiKeyConfig.decode(reader, reader.uint32()) };\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiSecurityConfig>, I>>(base?: I): RemoteApiSecurityConfig {\n return RemoteApiSecurityConfig.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiSecurityConfig>, I>>(object: I): RemoteApiSecurityConfig {\n const message = createBaseRemoteApiSecurityConfig();\n message.securityScheme = object.securityScheme ?? RemoteApiSecurityConfig_SecurityScheme.SCHEME_UNSET;\n if (\n object.configs?.$case === \"apiKeyParam\" &&\n object.configs?.apiKeyParam !== undefined &&\n object.configs?.apiKeyParam !== null\n ) {\n message.configs = {\n $case: \"apiKeyParam\",\n apiKeyParam: RemoteApiHttpRequestParameter.fromPartial(object.configs.apiKeyParam),\n };\n }\n if (\n object.configs?.$case === \"oauth2Config\" &&\n object.configs?.oauth2Config !== undefined &&\n object.configs?.oauth2Config !== null\n ) {\n message.configs = {\n $case: \"oauth2Config\",\n oauth2Config: RemoteApiOAuth2Config.fromPartial(object.configs.oauth2Config),\n };\n }\n if (\n object.configs?.$case === \"apiKeyConfig\" &&\n object.configs?.apiKeyConfig !== undefined &&\n object.configs?.apiKeyConfig !== null\n ) {\n message.configs = {\n $case: \"apiKeyConfig\",\n apiKeyConfig: RemoteApiKeyConfig.fromPartial(object.configs.apiKeyConfig),\n };\n }\n return message;\n },\n};\n\nfunction createBaseRemoteApiKeyConfig(): RemoteApiKeyConfig {\n return { params: [], secretValues: {} };\n}\n\nexport const RemoteApiKeyConfig: MessageFns<RemoteApiKeyConfig> = {\n encode(message: RemoteApiKeyConfig, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n for (const v of message.params) {\n RemoteApiHttpRequestParameter.encode(v!, writer.uint32(10).fork()).join();\n }\n Object.entries(message.secretValues).forEach(([key, value]) => {\n RemoteApiKeyConfig_SecretValuesEntry.encode({ key: key as any, value }, writer.uint32(18).fork()).join();\n });\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiKeyConfig {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiKeyConfig();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.params.push(RemoteApiHttpRequestParameter.decode(reader, reader.uint32()));\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n const entry2 = RemoteApiKeyConfig_SecretValuesEntry.decode(reader, reader.uint32());\n if (entry2.value !== undefined) {\n message.secretValues[entry2.key] = entry2.value;\n }\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiKeyConfig>, I>>(base?: I): RemoteApiKeyConfig {\n return RemoteApiKeyConfig.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiKeyConfig>, I>>(object: I): RemoteApiKeyConfig {\n const message = createBaseRemoteApiKeyConfig();\n message.params = object.params?.map((e) => RemoteApiHttpRequestParameter.fromPartial(e)) || [];\n message.secretValues = Object.entries(object.secretValues ?? {}).reduce<{ [key: string]: string }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = globalThis.String(value);\n }\n return acc;\n },\n {},\n );\n return message;\n },\n};\n\nfunction createBaseRemoteApiKeyConfig_SecretValuesEntry(): RemoteApiKeyConfig_SecretValuesEntry {\n return { key: \"\", value: \"\" };\n}\n\nexport const RemoteApiKeyConfig_SecretValuesEntry: MessageFns<RemoteApiKeyConfig_SecretValuesEntry> = {\n encode(message: RemoteApiKeyConfig_SecretValuesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== \"\") {\n writer.uint32(18).string(message.value);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiKeyConfig_SecretValuesEntry {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiKeyConfig_SecretValuesEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.key = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.value = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiKeyConfig_SecretValuesEntry>, I>>(\n base?: I,\n ): RemoteApiKeyConfig_SecretValuesEntry {\n return RemoteApiKeyConfig_SecretValuesEntry.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiKeyConfig_SecretValuesEntry>, I>>(\n object: I,\n ): RemoteApiKeyConfig_SecretValuesEntry {\n const message = createBaseRemoteApiKeyConfig_SecretValuesEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiSpecMetadata(): RemoteApiSpecMetadata {\n return {\n name: \"\",\n author: \"\",\n creationTimeSec: \"0\",\n lastEditTimeSec: \"0\",\n lastEditor: \"\",\n reviewTimeSec: \"0\",\n reviewer: \"\",\n secretId: \"\",\n derivedFromSpecId: \"\",\n createdFrom: CreatedFrom.CREATED_FROM_UNSET,\n iconUrl: \"\",\n providerName: \"\",\n description: \"\",\n documentationUrl: \"\",\n internalApiQuipUrl: \"\",\n version: \"0\",\n };\n}\n\nexport const RemoteApiSpecMetadata: MessageFns<RemoteApiSpecMetadata> = {\n encode(message: RemoteApiSpecMetadata, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.author !== \"\") {\n writer.uint32(18).string(message.author);\n }\n if (message.creationTimeSec !== \"0\") {\n writer.uint32(24).int64(message.creationTimeSec);\n }\n if (message.lastEditTimeSec !== \"0\") {\n writer.uint32(32).int64(message.lastEditTimeSec);\n }\n if (message.lastEditor !== \"\") {\n writer.uint32(42).string(message.lastEditor);\n }\n if (message.reviewTimeSec !== \"0\") {\n writer.uint32(48).int64(message.reviewTimeSec);\n }\n if (message.reviewer !== \"\") {\n writer.uint32(58).string(message.reviewer);\n }\n if (message.secretId !== \"\") {\n writer.uint32(66).string(message.secretId);\n }\n if (message.derivedFromSpecId !== \"\") {\n writer.uint32(74).string(message.derivedFromSpecId);\n }\n if (message.createdFrom !== CreatedFrom.CREATED_FROM_UNSET) {\n writer.uint32(80).int32(createdFromToNumber(message.createdFrom));\n }\n if (message.iconUrl !== \"\") {\n writer.uint32(90).string(message.iconUrl);\n }\n if (message.providerName !== \"\") {\n writer.uint32(98).string(message.providerName);\n }\n if (message.description !== \"\") {\n writer.uint32(106).string(message.description);\n }\n if (message.documentationUrl !== \"\") {\n writer.uint32(114).string(message.documentationUrl);\n }\n if (message.internalApiQuipUrl !== \"\") {\n writer.uint32(122).string(message.internalApiQuipUrl);\n }\n if (message.version !== \"0\") {\n writer.uint32(128).int64(message.version);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiSpecMetadata {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSpecMetadata();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.author = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.creationTimeSec = reader.int64().toString();\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.lastEditTimeSec = reader.int64().toString();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.lastEditor = reader.string();\n continue;\n }\n case 6: {\n if (tag !== 48) {\n break;\n }\n\n message.reviewTimeSec = reader.int64().toString();\n continue;\n }\n case 7: {\n if (tag !== 58) {\n break;\n }\n\n message.reviewer = reader.string();\n continue;\n }\n case 8: {\n if (tag !== 66) {\n break;\n }\n\n message.secretId = reader.string();\n continue;\n }\n case 9: {\n if (tag !== 74) {\n break;\n }\n\n message.derivedFromSpecId = reader.string();\n continue;\n }\n case 10: {\n if (tag !== 80) {\n break;\n }\n\n message.createdFrom = createdFromFromJSON(reader.int32());\n continue;\n }\n case 11: {\n if (tag !== 90) {\n break;\n }\n\n message.iconUrl = reader.string();\n continue;\n }\n case 12: {\n if (tag !== 98) {\n break;\n }\n\n message.providerName = reader.string();\n continue;\n }\n case 13: {\n if (tag !== 106) {\n break;\n }\n\n message.description = reader.string();\n continue;\n }\n case 14: {\n if (tag !== 114) {\n break;\n }\n\n message.documentationUrl = reader.string();\n continue;\n }\n case 15: {\n if (tag !== 122) {\n break;\n }\n\n message.internalApiQuipUrl = reader.string();\n continue;\n }\n case 16: {\n if (tag !== 128) {\n break;\n }\n\n message.version = reader.int64().toString();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiSpecMetadata>, I>>(base?: I): RemoteApiSpecMetadata {\n return RemoteApiSpecMetadata.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiSpecMetadata>, I>>(object: I): RemoteApiSpecMetadata {\n const message = createBaseRemoteApiSpecMetadata();\n message.name = object.name ?? \"\";\n message.author = object.author ?? \"\";\n message.creationTimeSec = object.creationTimeSec ?? \"0\";\n message.lastEditTimeSec = object.lastEditTimeSec ?? \"0\";\n message.lastEditor = object.lastEditor ?? \"\";\n message.reviewTimeSec = object.reviewTimeSec ?? \"0\";\n message.reviewer = object.reviewer ?? \"\";\n message.secretId = object.secretId ?? \"\";\n message.derivedFromSpecId = object.derivedFromSpecId ?? \"\";\n message.createdFrom = object.createdFrom ?? CreatedFrom.CREATED_FROM_UNSET;\n message.iconUrl = object.iconUrl ?? \"\";\n message.providerName = object.providerName ?? \"\";\n message.description = object.description ?? \"\";\n message.documentationUrl = object.documentationUrl ?? \"\";\n message.internalApiQuipUrl = object.internalApiQuipUrl ?? \"\";\n message.version = object.version ?? \"0\";\n return message;\n },\n};\n\nfunction createBaseRemoteApiSpec(): RemoteApiSpec {\n return {\n id: \"\",\n endpoints: [],\n securityConfig: undefined,\n host: \"\",\n tlsRequired: false,\n maxRequestSizeBytes: 0,\n maxResponseSizeBytes: 0,\n maxResponseTimeMillis: 0,\n approvalState: SpecApprovalState.APPROVAL_STATE_UNSET,\n visibility: SpecVisibility.VISIBILITY_UNSET,\n metadata: undefined,\n targetPlatforms: [],\n customVisibilityUsers: [],\n localOnly: false,\n lastAccessTimeSec: \"0\",\n restrictedJsApiPermissions: [],\n minLensStudioVersion: \"\",\n sponsoredLensRestricted: false,\n editPermissionUsers: [],\n grpcEndpoints: [],\n snapkitAppId: \"\",\n useBuiltinLocalProcessor: false,\n orgId: \"\",\n allowRedirects: false,\n };\n}\n\nexport const RemoteApiSpec: MessageFns<RemoteApiSpec> = {\n encode(message: RemoteApiSpec, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.id !== \"\") {\n writer.uint32(10).string(message.id);\n }\n for (const v of message.endpoints) {\n RemoteApiHttpEndpoint.encode(v!, writer.uint32(18).fork()).join();\n }\n if (message.securityConfig !== undefined) {\n RemoteApiSecurityConfig.encode(message.securityConfig, writer.uint32(26).fork()).join();\n }\n if (message.host !== \"\") {\n writer.uint32(34).string(message.host);\n }\n if (message.tlsRequired !== false) {\n writer.uint32(40).bool(message.tlsRequired);\n }\n if (message.maxRequestSizeBytes !== 0) {\n writer.uint32(48).int32(message.maxRequestSizeBytes);\n }\n if (message.maxResponseSizeBytes !== 0) {\n writer.uint32(56).int32(message.maxResponseSizeBytes);\n }\n if (message.maxResponseTimeMillis !== 0) {\n writer.uint32(64).int32(message.maxResponseTimeMillis);\n }\n if (message.approvalState !== SpecApprovalState.APPROVAL_STATE_UNSET) {\n writer.uint32(72).int32(specApprovalStateToNumber(message.approvalState));\n }\n if (message.visibility !== SpecVisibility.VISIBILITY_UNSET) {\n writer.uint32(80).int32(specVisibilityToNumber(message.visibility));\n }\n if (message.metadata !== undefined) {\n RemoteApiSpecMetadata.encode(message.metadata, writer.uint32(90).fork()).join();\n }\n writer.uint32(98).fork();\n for (const v of message.targetPlatforms) {\n writer.int32(targetPlatformToNumber(v));\n }\n writer.join();\n for (const v of message.customVisibilityUsers) {\n writer.uint32(106).string(v!);\n }\n if (message.localOnly !== false) {\n writer.uint32(112).bool(message.localOnly);\n }\n if (message.lastAccessTimeSec !== \"0\") {\n writer.uint32(120).int64(message.lastAccessTimeSec);\n }\n writer.uint32(130).fork();\n for (const v of message.restrictedJsApiPermissions) {\n writer.int32(restrictedJsApiPermissionToNumber(v));\n }\n writer.join();\n if (message.minLensStudioVersion !== \"\") {\n writer.uint32(138).string(message.minLensStudioVersion);\n }\n if (message.sponsoredLensRestricted !== false) {\n writer.uint32(144).bool(message.sponsoredLensRestricted);\n }\n for (const v of message.editPermissionUsers) {\n writer.uint32(154).string(v!);\n }\n for (const v of message.grpcEndpoints) {\n RemoteApiGrpcEndpoint.encode(v!, writer.uint32(162).fork()).join();\n }\n if (message.snapkitAppId !== \"\") {\n writer.uint32(170).string(message.snapkitAppId);\n }\n if (message.useBuiltinLocalProcessor !== false) {\n writer.uint32(176).bool(message.useBuiltinLocalProcessor);\n }\n if (message.orgId !== \"\") {\n writer.uint32(186).string(message.orgId);\n }\n if (message.allowRedirects !== false) {\n writer.uint32(192).bool(message.allowRedirects);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiSpec {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSpec();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.id = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.endpoints.push(RemoteApiHttpEndpoint.decode(reader, reader.uint32()));\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.securityConfig = RemoteApiSecurityConfig.decode(reader, reader.uint32());\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.host = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 40) {\n break;\n }\n\n message.tlsRequired = reader.bool();\n continue;\n }\n case 6: {\n if (tag !== 48) {\n break;\n }\n\n message.maxRequestSizeBytes = reader.int32();\n continue;\n }\n case 7: {\n if (tag !== 56) {\n break;\n }\n\n message.maxResponseSizeBytes = reader.int32();\n continue;\n }\n case 8: {\n if (tag !== 64) {\n break;\n }\n\n message.maxResponseTimeMillis = reader.int32();\n continue;\n }\n case 9: {\n if (tag !== 72) {\n break;\n }\n\n message.approvalState = specApprovalStateFromJSON(reader.int32());\n continue;\n }\n case 10: {\n if (tag !== 80) {\n break;\n }\n\n message.visibility = specVisibilityFromJSON(reader.int32());\n continue;\n }\n case 11: {\n if (tag !== 90) {\n break;\n }\n\n message.metadata = RemoteApiSpecMetadata.decode(reader, reader.uint32());\n continue;\n }\n case 12: {\n if (tag === 96) {\n message.targetPlatforms.push(targetPlatformFromJSON(reader.int32()));\n\n continue;\n }\n\n if (tag === 98) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.targetPlatforms.push(targetPlatformFromJSON(reader.int32()));\n }\n\n continue;\n }\n\n break;\n }\n case 13: {\n if (tag !== 106) {\n break;\n }\n\n message.customVisibilityUsers.push(reader.string());\n continue;\n }\n case 14: {\n if (tag !== 112) {\n break;\n }\n\n message.localOnly = reader.bool();\n continue;\n }\n case 15: {\n if (tag !== 120) {\n break;\n }\n\n message.lastAccessTimeSec = reader.int64().toString();\n continue;\n }\n case 16: {\n if (tag === 128) {\n message.restrictedJsApiPermissions.push(restrictedJsApiPermissionFromJSON(reader.int32()));\n\n continue;\n }\n\n if (tag === 130) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.restrictedJsApiPermissions.push(restrictedJsApiPermissionFromJSON(reader.int32()));\n }\n\n continue;\n }\n\n break;\n }\n case 17: {\n if (tag !== 138) {\n break;\n }\n\n message.minLensStudioVersion = reader.string();\n continue;\n }\n case 18: {\n if (tag !== 144) {\n break;\n }\n\n message.sponsoredLensRestricted = reader.bool();\n continue;\n }\n case 19: {\n if (tag !== 154) {\n break;\n }\n\n message.editPermissionUsers.push(reader.string());\n continue;\n }\n case 20: {\n if (tag !== 162) {\n break;\n }\n\n message.grpcEndpoints.push(RemoteApiGrpcEndpoint.decode(reader, reader.uint32()));\n continue;\n }\n case 21: {\n if (tag !== 170) {\n break;\n }\n\n message.snapkitAppId = reader.string();\n continue;\n }\n case 22: {\n if (tag !== 176) {\n break;\n }\n\n message.useBuiltinLocalProcessor = reader.bool();\n continue;\n }\n case 23: {\n if (tag !== 186) {\n break;\n }\n\n message.orgId = reader.string();\n continue;\n }\n case 24: {\n if (tag !== 192) {\n break;\n }\n\n message.allowRedirects = reader.bool();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiSpec>, I>>(base?: I): RemoteApiSpec {\n return RemoteApiSpec.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiSpec>, I>>(object: I): RemoteApiSpec {\n const message = createBaseRemoteApiSpec();\n message.id = object.id ?? \"\";\n message.endpoints = object.endpoints?.map((e) => RemoteApiHttpEndpoint.fromPartial(e)) || [];\n message.securityConfig = (object.securityConfig !== undefined && object.securityConfig !== null)\n ? RemoteApiSecurityConfig.fromPartial(object.securityConfig)\n : undefined;\n message.host = object.host ?? \"\";\n message.tlsRequired = object.tlsRequired ?? false;\n message.maxRequestSizeBytes = object.maxRequestSizeBytes ?? 0;\n message.maxResponseSizeBytes = object.maxResponseSizeBytes ?? 0;\n message.maxResponseTimeMillis = object.maxResponseTimeMillis ?? 0;\n message.approvalState = object.approvalState ?? SpecApprovalState.APPROVAL_STATE_UNSET;\n message.visibility = object.visibility ?? SpecVisibility.VISIBILITY_UNSET;\n message.metadata = (object.metadata !== undefined && object.metadata !== null)\n ? RemoteApiSpecMetadata.fromPartial(object.metadata)\n : undefined;\n message.targetPlatforms = object.targetPlatforms?.map((e) => e) || [];\n message.customVisibilityUsers = object.customVisibilityUsers?.map((e) => e) || [];\n message.localOnly = object.localOnly ?? false;\n message.lastAccessTimeSec = object.lastAccessTimeSec ?? \"0\";\n message.restrictedJsApiPermissions = object.restrictedJsApiPermissions?.map((e) => e) || [];\n message.minLensStudioVersion = object.minLensStudioVersion ?? \"\";\n message.sponsoredLensRestricted = object.sponsoredLensRestricted ?? false;\n message.editPermissionUsers = object.editPermissionUsers?.map((e) => e) || [];\n message.grpcEndpoints = object.grpcEndpoints?.map((e) => RemoteApiGrpcEndpoint.fromPartial(e)) || [];\n message.snapkitAppId = object.snapkitAppId ?? \"\";\n message.useBuiltinLocalProcessor = object.useBuiltinLocalProcessor ?? false;\n message.orgId = object.orgId ?? \"\";\n message.allowRedirects = object.allowRedirects ?? false;\n return message;\n },\n};\n\nfunction createBaseRemoteApiSpecSetMetadata(): RemoteApiSpecSetMetadata {\n return {\n name: \"\",\n iconUrl: \"\",\n providerName: \"\",\n description: \"\",\n author: \"\",\n creationTimeSec: \"0\",\n lastEditTimeSec: \"0\",\n lastEditor: \"\",\n documentationUrl: \"\",\n createdFrom: CreatedFrom.CREATED_FROM_UNSET,\n };\n}\n\nexport const RemoteApiSpecSetMetadata: MessageFns<RemoteApiSpecSetMetadata> = {\n encode(message: RemoteApiSpecSetMetadata, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.iconUrl !== \"\") {\n writer.uint32(18).string(message.iconUrl);\n }\n if (message.providerName !== \"\") {\n writer.uint32(26).string(message.providerName);\n }\n if (message.description !== \"\") {\n writer.uint32(34).string(message.description);\n }\n if (message.author !== \"\") {\n writer.uint32(42).string(message.author);\n }\n if (message.creationTimeSec !== \"0\") {\n writer.uint32(48).int64(message.creationTimeSec);\n }\n if (message.lastEditTimeSec !== \"0\") {\n writer.uint32(56).int64(message.lastEditTimeSec);\n }\n if (message.lastEditor !== \"\") {\n writer.uint32(66).string(message.lastEditor);\n }\n if (message.documentationUrl !== \"\") {\n writer.uint32(74).string(message.documentationUrl);\n }\n if (message.createdFrom !== CreatedFrom.CREATED_FROM_UNSET) {\n writer.uint32(80).int32(createdFromToNumber(message.createdFrom));\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiSpecSetMetadata {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSpecSetMetadata();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.iconUrl = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.providerName = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.description = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.author = reader.string();\n continue;\n }\n case 6: {\n if (tag !== 48) {\n break;\n }\n\n message.creationTimeSec = reader.int64().toString();\n continue;\n }\n case 7: {\n if (tag !== 56) {\n break;\n }\n\n message.lastEditTimeSec = reader.int64().toString();\n continue;\n }\n case 8: {\n if (tag !== 66) {\n break;\n }\n\n message.lastEditor = reader.string();\n continue;\n }\n case 9: {\n if (tag !== 74) {\n break;\n }\n\n message.documentationUrl = reader.string();\n continue;\n }\n case 10: {\n if (tag !== 80) {\n break;\n }\n\n message.createdFrom = createdFromFromJSON(reader.int32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiSpecSetMetadata>, I>>(base?: I): RemoteApiSpecSetMetadata {\n return RemoteApiSpecSetMetadata.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiSpecSetMetadata>, I>>(object: I): RemoteApiSpecSetMetadata {\n const message = createBaseRemoteApiSpecSetMetadata();\n message.name = object.name ?? \"\";\n message.iconUrl = object.iconUrl ?? \"\";\n message.providerName = object.providerName ?? \"\";\n message.description = object.description ?? \"\";\n message.author = object.author ?? \"\";\n message.creationTimeSec = object.creationTimeSec ?? \"0\";\n message.lastEditTimeSec = object.lastEditTimeSec ?? \"0\";\n message.lastEditor = object.lastEditor ?? \"\";\n message.documentationUrl = object.documentationUrl ?? \"\";\n message.createdFrom = object.createdFrom ?? CreatedFrom.CREATED_FROM_UNSET;\n return message;\n },\n};\n\nfunction createBaseRemoteApiSpecSet(): RemoteApiSpecSet {\n return { id: \"\", specs: [], metadata: undefined, lastAccessTimeSec: \"0\" };\n}\n\nexport const RemoteApiSpecSet: MessageFns<RemoteApiSpecSet> = {\n encode(message: RemoteApiSpecSet, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.id !== \"\") {\n writer.uint32(10).string(message.id);\n }\n for (const v of message.specs) {\n RemoteApiSpec.encode(v!, writer.uint32(18).fork()).join();\n }\n if (message.metadata !== undefined) {\n RemoteApiSpecSetMetadata.encode(message.metadata, writer.uint32(26).fork()).join();\n }\n if (message.lastAccessTimeSec !== \"0\") {\n writer.uint32(32).int64(message.lastAccessTimeSec);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RemoteApiSpecSet {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRemoteApiSpecSet();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.id = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.specs.push(RemoteApiSpec.decode(reader, reader.uint32()));\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.metadata = RemoteApiSpecSetMetadata.decode(reader, reader.uint32());\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.lastAccessTimeSec = reader.int64().toString();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RemoteApiSpecSet>, I>>(base?: I): RemoteApiSpecSet {\n return RemoteApiSpecSet.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RemoteApiSpecSet>, I>>(object: I): RemoteApiSpecSet {\n const message = createBaseRemoteApiSpecSet();\n message.id = object.id ?? \"\";\n message.specs = object.specs?.map((e) => RemoteApiSpec.fromPartial(e)) || [];\n message.metadata = (object.metadata !== undefined && object.metadata !== null)\n ? RemoteApiSpecSetMetadata.fromPartial(object.metadata)\n : undefined;\n message.lastAccessTimeSec = object.lastAccessTimeSec ?? \"0\";\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin ? T\n : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends { $case: string } ? { [K in keyof Omit<T, \"$case\">]?: DeepPartial<T[K]> } & { $case: T[\"$case\"] }\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\ntype KeysOfUnion<T> = T extends T ? keyof T : never;\nexport type Exact<P, I extends P> = P extends Builtin ? P\n : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };\n\nexport interface MessageFns<T> {\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n create<I extends Exact<DeepPartial<T>, I>>(base?: I): T;\n fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T;\n}\n"]}