@atproto/bsky 0.0.140 → 0.0.142

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 (85) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.js +2 -2
  3. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.js.map +1 -1
  4. package/dist/data-plane/server/db/database-schema.d.ts +2 -1
  5. package/dist/data-plane/server/db/database-schema.d.ts.map +1 -1
  6. package/dist/data-plane/server/db/migrations/20250404T163421487Z-verifications.d.ts +4 -0
  7. package/dist/data-plane/server/db/migrations/20250404T163421487Z-verifications.d.ts.map +1 -0
  8. package/dist/data-plane/server/db/migrations/20250404T163421487Z-verifications.js +36 -0
  9. package/dist/data-plane/server/db/migrations/20250404T163421487Z-verifications.js.map +1 -0
  10. package/dist/data-plane/server/db/migrations/index.d.ts +1 -0
  11. package/dist/data-plane/server/db/migrations/index.d.ts.map +1 -1
  12. package/dist/data-plane/server/db/migrations/index.js +2 -1
  13. package/dist/data-plane/server/db/migrations/index.js.map +1 -1
  14. package/dist/data-plane/server/db/tables/actor.d.ts +2 -0
  15. package/dist/data-plane/server/db/tables/actor.d.ts.map +1 -1
  16. package/dist/data-plane/server/db/tables/actor.js.map +1 -1
  17. package/dist/data-plane/server/db/tables/verification.d.ts +18 -0
  18. package/dist/data-plane/server/db/tables/verification.d.ts.map +1 -0
  19. package/dist/data-plane/server/db/tables/verification.js +5 -0
  20. package/dist/data-plane/server/db/tables/verification.js.map +1 -0
  21. package/dist/data-plane/server/indexing/index.d.ts +2 -0
  22. package/dist/data-plane/server/indexing/index.d.ts.map +1 -1
  23. package/dist/data-plane/server/indexing/index.js +2 -0
  24. package/dist/data-plane/server/indexing/index.js.map +1 -1
  25. package/dist/data-plane/server/indexing/plugins/verification.d.ts +11 -0
  26. package/dist/data-plane/server/indexing/plugins/verification.d.ts.map +1 -0
  27. package/dist/data-plane/server/indexing/plugins/verification.js +95 -0
  28. package/dist/data-plane/server/indexing/plugins/verification.js.map +1 -0
  29. package/dist/data-plane/server/routes/profile.d.ts.map +1 -1
  30. package/dist/data-plane/server/routes/profile.js +28 -1
  31. package/dist/data-plane/server/routes/profile.js.map +1 -1
  32. package/dist/data-plane/server/util.d.ts +6 -6
  33. package/dist/hydration/actor.d.ts +11 -0
  34. package/dist/hydration/actor.d.ts.map +1 -1
  35. package/dist/hydration/actor.js +19 -0
  36. package/dist/hydration/actor.js.map +1 -1
  37. package/dist/hydration/label.d.ts +1 -0
  38. package/dist/hydration/label.d.ts.map +1 -1
  39. package/dist/hydration/label.js +7 -0
  40. package/dist/hydration/label.js.map +1 -1
  41. package/dist/lexicon/lexicons.d.ts +134 -0
  42. package/dist/lexicon/lexicons.d.ts.map +1 -1
  43. package/dist/lexicon/lexicons.js +67 -0
  44. package/dist/lexicon/lexicons.js.map +1 -1
  45. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +29 -0
  46. package/dist/lexicon/types/app/bsky/actor/defs.d.ts.map +1 -1
  47. package/dist/lexicon/types/app/bsky/actor/defs.js +18 -0
  48. package/dist/lexicon/types/app/bsky/actor/defs.js.map +1 -1
  49. package/dist/lexicon/types/chat/bsky/actor/defs.d.ts +1 -0
  50. package/dist/lexicon/types/chat/bsky/actor/defs.d.ts.map +1 -1
  51. package/dist/lexicon/types/chat/bsky/actor/defs.js.map +1 -1
  52. package/dist/proto/bsky_connect.d.ts +30 -1
  53. package/dist/proto/bsky_connect.d.ts.map +1 -1
  54. package/dist/proto/bsky_connect.js +29 -0
  55. package/dist/proto/bsky_connect.js.map +1 -1
  56. package/dist/proto/bsky_pb.d.ts +243 -0
  57. package/dist/proto/bsky_pb.d.ts.map +1 -1
  58. package/dist/proto/bsky_pb.js +733 -5
  59. package/dist/proto/bsky_pb.js.map +1 -1
  60. package/dist/views/index.d.ts +2 -1
  61. package/dist/views/index.d.ts.map +1 -1
  62. package/dist/views/index.js +42 -0
  63. package/dist/views/index.js.map +1 -1
  64. package/package.json +7 -7
  65. package/proto/bsky.proto +67 -0
  66. package/src/api/app/bsky/graph/getSuggestedFollowsByActor.ts +2 -2
  67. package/src/data-plane/server/db/database-schema.ts +3 -1
  68. package/src/data-plane/server/db/migrations/20250404T163421487Z-verifications.ts +39 -0
  69. package/src/data-plane/server/db/migrations/index.ts +1 -0
  70. package/src/data-plane/server/db/tables/actor.ts +3 -0
  71. package/src/data-plane/server/db/tables/verification.ts +20 -0
  72. package/src/data-plane/server/indexing/index.ts +8 -2
  73. package/src/data-plane/server/indexing/plugins/verification.ts +96 -0
  74. package/src/data-plane/server/routes/profile.ts +63 -19
  75. package/src/hydration/actor.ts +38 -0
  76. package/src/hydration/label.ts +12 -0
  77. package/src/lexicon/lexicons.ts +70 -0
  78. package/src/lexicon/types/app/bsky/actor/defs.ts +47 -0
  79. package/src/lexicon/types/chat/bsky/actor/defs.ts +1 -0
  80. package/src/proto/bsky_connect.ts +35 -0
  81. package/src/proto/bsky_pb.ts +676 -0
  82. package/src/views/index.ts +60 -1
  83. package/tests/views/verification.test.ts +301 -0
  84. package/tsconfig.build.tsbuildinfo +1 -1
  85. package/tsconfig.tests.tsbuildinfo +1 -1
@@ -4,28 +4,28 @@ import { DatabaseSchema } from './db/database-schema';
4
4
  export declare const getDescendentsQb: (db: DatabaseSchema, opts: {
5
5
  uri: string;
6
6
  depth: number;
7
- }) => import("kysely/dist/cjs/parser/with-parser").QueryCreatorWithCommonTableExpression<import("./db/database-schema").DatabaseSchemaType, "descendent(uri, depth)", (cte: import("kysely").QueryCreator<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & Record<"descendent", {
7
+ }) => import("kysely/dist/cjs/parser/with-parser").QueryCreatorWithCommonTableExpression<import("./db/database-schema").DatabaseSchemaType, "descendent(uri, depth)", (cte: import("kysely").QueryCreator<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & import("./db/tables/verification").PartialDB & Record<"descendent", {
8
8
  uri: any;
9
9
  depth: any;
10
- }>>) => import("kysely").SelectQueryBuilder<import("kysely/dist/cjs/parser/table-parser").From<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & Record<"descendent", {
10
+ }>>) => import("kysely").SelectQueryBuilder<import("kysely/dist/cjs/parser/table-parser").From<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & import("./db/tables/verification").PartialDB & Record<"descendent", {
11
11
  uri: any;
12
12
  depth: any;
13
- }>, "post">, "post", import("kysely").Selection<import("kysely/dist/cjs/parser/table-parser").From<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & Record<"descendent", {
13
+ }>, "post">, "post", import("kysely").Selection<import("kysely/dist/cjs/parser/table-parser").From<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & import("./db/tables/verification").PartialDB & Record<"descendent", {
14
14
  uri: any;
15
15
  depth: any;
16
16
  }>, "post">, "post", "post.uri as uri" | import("kysely").AliasedRawBuilder<number, "depth">>>>;
17
17
  export declare const getAncestorsAndSelfQb: (db: DatabaseSchema, opts: {
18
18
  uri: string;
19
19
  parentHeight: number;
20
- }) => import("kysely/dist/cjs/parser/with-parser").QueryCreatorWithCommonTableExpression<import("./db/database-schema").DatabaseSchemaType, "ancestor(uri, ancestorUri, height)", (cte: import("kysely").QueryCreator<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & Record<"ancestor", {
20
+ }) => import("kysely/dist/cjs/parser/with-parser").QueryCreatorWithCommonTableExpression<import("./db/database-schema").DatabaseSchemaType, "ancestor(uri, ancestorUri, height)", (cte: import("kysely").QueryCreator<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & import("./db/tables/verification").PartialDB & Record<"ancestor", {
21
21
  uri: any;
22
22
  ancestorUri: any;
23
23
  height: any;
24
- }>>) => import("kysely").SelectQueryBuilder<import("kysely/dist/cjs/parser/table-parser").From<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & Record<"ancestor", {
24
+ }>>) => import("kysely").SelectQueryBuilder<import("kysely/dist/cjs/parser/table-parser").From<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & import("./db/tables/verification").PartialDB & Record<"ancestor", {
25
25
  uri: any;
26
26
  ancestorUri: any;
27
27
  height: any;
28
- }>, "post">, "post", import("kysely").Selection<import("kysely/dist/cjs/parser/table-parser").From<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & Record<"ancestor", {
28
+ }>, "post">, "post", import("kysely").Selection<import("kysely/dist/cjs/parser/table-parser").From<import("./db/tables/duplicate-record").PartialDB & import("./db/tables/profile").PartialDB & import("./db/tables/profile-agg").PartialDB & import("./db/tables/post").PartialDB & import("./db/tables/post-embed").PartialDB & import("./db/tables/post-agg").PartialDB & import("./db/tables/repost").PartialDB & import("./db/tables/thread-gate").PartialDB & import("./db/tables/post-gate").PartialDB & import("./db/tables/feed-item").PartialDB & import("./db/tables/follow").PartialDB & import("./db/tables/like").PartialDB & import("./db/tables/list").PartialDB & import("./db/tables/list-item").PartialDB & import("./db/tables/list-mute").PartialDB & import("./db/tables/list-block").PartialDB & import("./db/tables/mute").PartialDB & import("./db/tables/actor-block").PartialDB & import("./db/tables/thread-mute").PartialDB & import("./db/tables/feed-generator").PartialDB & import("./db/tables/subscription").PartialDB & import("./db/tables/actor").PartialDB & import("./db/tables/actor-state").PartialDB & import("./db/tables/actor-sync").PartialDB & import("./db/tables/record").PartialDB & import("./db/tables/notification").PartialDB & import("./db/tables/notification-push-token").PartialDB & import("./db/tables/did-cache").PartialDB & import("./db/tables/label").PartialDB & import("./db/tables/algo").PartialDB & import("./db/tables/view-param").PartialDB & import("./db/tables/suggested-follow").PartialDB & import("./db/tables/suggested-feed").PartialDB & import("./db/tables/blob-takedown").PartialDB & import("./db/tables/labeler").PartialDB & import("./db/tables/starter-pack").PartialDB & import("./db/tables/tagged-suggestion").PartialDB & import("./db/tables/quote").PartialDB & import("./db/tables/verification").PartialDB & Record<"ancestor", {
29
29
  uri: any;
30
30
  ancestorUri: any;
31
31
  height: any;
@@ -1,6 +1,7 @@
1
1
  import { DataPlaneClient } from '../data-plane/client';
2
2
  import { Record as ProfileRecord } from '../lexicon/types/app/bsky/actor/profile';
3
3
  import { Record as ChatDeclarationRecord } from '../lexicon/types/chat/bsky/actor/declaration';
4
+ import { VerificationMeta } from '../proto/bsky_pb';
4
5
  import { HydrationMap, RecordInfo } from './util';
5
6
  export type Actor = {
6
7
  did: string;
@@ -16,7 +17,17 @@ export type Actor = {
16
17
  upstreamStatus?: string;
17
18
  createdAt?: Date;
18
19
  priorityNotifications: boolean;
20
+ trustedVerifier?: boolean;
21
+ verifications: VerificationHydrationState[];
19
22
  };
23
+ export type VerificationHydrationState = {
24
+ issuer: string;
25
+ uri: string;
26
+ handle: string;
27
+ displayName: string;
28
+ createdAt: string;
29
+ };
30
+ export type VerificationMetaRequired = Required<VerificationMeta>;
20
31
  export type Actors = HydrationMap<Actor>;
21
32
  export type ChatDeclaration = RecordInfo<ChatDeclarationRecord>;
22
33
  export type ChatDeclarations = HydrationMap<ChatDeclaration>;
@@ -1 +1 @@
1
- {"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/hydration/actor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/hydration/actor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,EAAE,MAAM,IAAI,qBAAqB,EAAE,MAAM,8CAA8C,CAAA;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EACL,YAAY,EACZ,UAAU,EAIX,MAAM,QAAQ,CAAA;AAEf,MAAM,MAAM,KAAK,GAAG;IAClB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,aAAa,EAAE,0BAA0B,EAAE,CAAA;CAC5C,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAA;AAEjE,MAAM,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;AAExC,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAA;AAE/D,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,eAAe,CAAC,CAAA;AAE5D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE;QACf,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,EAAE,CAAA;KACpB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAA;AAElE,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAE/E,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,CAAA;AAElD,qBAAa,aAAa;IACL,SAAS,EAAE,eAAe;gBAA1B,SAAS,EAAE,eAAe;IAEvC,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAU1D,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAoBhE,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMzD,SAAS,CACb,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE;QACJ,gBAAgB,CAAC,EAAE,OAAO,CAAA;QAC1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;KACvB,GACL,OAAO,CAAC,MAAM,CAAC;IA+DZ,mBAAmB,CACvB,IAAI,EAAE,MAAM,EAAE,EACd,gBAAgB,UAAQ,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAetB,2BAA2B,CAC/B,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC;IAyBzB,iBAAiB,CACrB,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,OAAO,CAAC,cAAc,CAAC;IA2BpB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;CAcjE"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ActorHydrator = void 0;
4
+ const common_1 = require("@atproto/common");
4
5
  const util_1 = require("./util");
5
6
  class ActorHydrator {
6
7
  constructor(dataplane) {
@@ -58,6 +59,22 @@ class ActorHydrator {
58
59
  const profile = actor.profile
59
60
  ? (0, util_1.parseRecord)(actor.profile, includeTakedowns)
60
61
  : undefined;
62
+ const verifications = (0, common_1.mapDefined)(Object.entries(actor.verifiedBy), ([actorDid, verificationMeta]) => {
63
+ if (verificationMeta.displayName &&
64
+ verificationMeta.handle &&
65
+ verificationMeta.rkey &&
66
+ verificationMeta.sortedAt) {
67
+ return {
68
+ issuer: actorDid,
69
+ uri: `at://${actorDid}/app.bsky.graph.verification/${verificationMeta.rkey}`,
70
+ handle: verificationMeta.handle,
71
+ displayName: verificationMeta.displayName,
72
+ createdAt: verificationMeta.sortedAt.toDate().toISOString(),
73
+ };
74
+ }
75
+ // Filter out the verification meta that doesn't contain all info.
76
+ return undefined;
77
+ });
61
78
  return acc.set(did, {
62
79
  did,
63
80
  handle: (0, util_1.parseString)(actor.handle),
@@ -72,6 +89,8 @@ class ActorHydrator {
72
89
  upstreamStatus: actor.upstreamStatus || undefined,
73
90
  createdAt: actor.createdAt?.toDate(),
74
91
  priorityNotifications: actor.priorityNotifications,
92
+ trustedVerifier: actor.trustedVerifier,
93
+ verifications,
75
94
  });
76
95
  }, new util_1.HydrationMap());
77
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/hydration/actor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/hydration/actor.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { ParsedLabelers } from '../util';
5
5
  import { HydrationMap, Merges, RecordInfo } from './util';
6
6
  export type { Label } from '../lexicon/types/com/atproto/label/defs';
7
7
  export type SubjectLabels = {
8
+ isImpersonation: boolean;
8
9
  isTakendown: boolean;
9
10
  needsReview: boolean;
10
11
  labels: HydrationMap<Label>;
@@ -1 +1 @@
1
- {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/hydration/label.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,2CAA2C,CAAA;AACnF,OAAO,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EACL,YAAY,EACZ,MAAM,EACN,UAAU,EAIX,MAAM,QAAQ,CAAA;AAEf,YAAY,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAA;AAEpE,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;IACpB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAA;CAC5B,CAAA;AAED,qBAAa,MAAO,SAAQ,YAAY,CAAC,aAAa,CAAE,YAAW,MAAM;IACvE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK;IAGvB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAaxB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE;CASnC;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,CAAA;AAElD,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;AAC/C,MAAM,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;AAE5C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAA;AAElE,qBAAa,aAAa;IACL,SAAS,EAAE,eAAe;gBAA1B,SAAS,EAAE,eAAe;IAEvC,oBAAoB,CACxB,QAAQ,EAAE,MAAM,EAAE,EAClB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC;IA4CZ,WAAW,CACf,IAAI,EAAE,MAAM,EAAE,EACd,gBAAgB,UAAQ,GACvB,OAAO,CAAC,QAAQ,CAAC;IAad,sBAAsB,CAC1B,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC;IAYzB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;CASjE"}
1
+ {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/hydration/label.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,2CAA2C,CAAA;AACnF,OAAO,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EACL,YAAY,EACZ,MAAM,EACN,UAAU,EAIX,MAAM,QAAQ,CAAA;AAEf,YAAY,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAA;AAEpE,MAAM,MAAM,aAAa,GAAG;IAC1B,eAAe,EAAE,OAAO,CAAA;IACxB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;IACpB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAA;CAC5B,CAAA;AAED,qBAAa,MAAO,SAAQ,YAAY,CAAC,aAAa,CAAE,YAAW,MAAM;IACvE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK;IAGvB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAaxB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE;CASnC;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,CAAA;AAElD,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;AAC/C,MAAM,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;AAE5C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAA;AAElE,qBAAa,aAAa;IACL,SAAS,EAAE,eAAe;gBAA1B,SAAS,EAAE,eAAe;IAEvC,oBAAoB,CACxB,QAAQ,EAAE,MAAM,EAAE,EAClB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC;IAsDZ,WAAW,CACf,IAAI,EAAE,MAAM,EAAE,EACd,gBAAgB,UAAQ,GACvB,OAAO,CAAC,QAAQ,CAAC;IAad,sBAAsB,CAC1B,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC;IAYzB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;CASjE"}
@@ -60,6 +60,7 @@ class LabelHydrator {
60
60
  let entry = acc.get(label.uri);
61
61
  if (!entry) {
62
62
  entry = {
63
+ isImpersonation: false,
63
64
  isTakendown: false,
64
65
  needsReview: false,
65
66
  labels: new util_1.HydrationMap(),
@@ -81,6 +82,11 @@ class LabelHydrator {
81
82
  if (isActionableNeedsReview) {
82
83
  entry.needsReview = true;
83
84
  }
85
+ if (label.val === IMPERSONATION_LABEL &&
86
+ !label.neg &&
87
+ labelers.redact.has(label.src)) {
88
+ entry.isImpersonation = true;
89
+ }
84
90
  return acc;
85
91
  }, new Labels());
86
92
  }
@@ -118,6 +124,7 @@ exports.LabelHydrator = LabelHydrator;
118
124
  const labelerDidToUri = (did) => {
119
125
  return syntax_1.AtUri.make(did, lexicons_1.ids.AppBskyLabelerService, 'self').toString();
120
126
  };
127
+ const IMPERSONATION_LABEL = 'impersonation';
121
128
  const TAKEDOWN_LABELS = ['!takedown', '!suspend'];
122
129
  const NEEDS_REVIEW_LABEL = 'needs-review';
123
130
  //# sourceMappingURL=label.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/hydration/label.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/hydration/label.ts"],"names":[],"mappings":"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"}
@@ -4163,6 +4163,10 @@ export declare const schemaDict: {
4163
4163
  readonly type: "string";
4164
4164
  readonly format: "datetime";
4165
4165
  };
4166
+ readonly verification: {
4167
+ readonly type: "ref";
4168
+ readonly ref: "lex:app.bsky.actor.defs#verificationState";
4169
+ };
4166
4170
  };
4167
4171
  };
4168
4172
  readonly profileView: {
@@ -4214,6 +4218,10 @@ export declare const schemaDict: {
4214
4218
  readonly ref: "lex:com.atproto.label.defs#label";
4215
4219
  };
4216
4220
  };
4221
+ readonly verification: {
4222
+ readonly type: "ref";
4223
+ readonly ref: "lex:app.bsky.actor.defs#verificationState";
4224
+ };
4217
4225
  };
4218
4226
  };
4219
4227
  readonly profileViewDetailed: {
@@ -4286,6 +4294,10 @@ export declare const schemaDict: {
4286
4294
  readonly type: "ref";
4287
4295
  readonly ref: "lex:com.atproto.repo.strongRef";
4288
4296
  };
4297
+ readonly verification: {
4298
+ readonly type: "ref";
4299
+ readonly ref: "lex:app.bsky.actor.defs#verificationState";
4300
+ };
4289
4301
  };
4290
4302
  };
4291
4303
  readonly profileAssociated: {
@@ -4374,6 +4386,57 @@ export declare const schemaDict: {
4374
4386
  };
4375
4387
  };
4376
4388
  };
4389
+ readonly verificationState: {
4390
+ readonly type: "object";
4391
+ readonly description: "Represents the verification information about the user this object is attached to.";
4392
+ readonly required: ["verifications", "verifiedStatus", "trustedVerifierStatus"];
4393
+ readonly properties: {
4394
+ readonly verifications: {
4395
+ readonly type: "array";
4396
+ readonly description: "All verifications issued by trusted verifiers on behalf of this user. Verifications by untrusted verifiers are not included.";
4397
+ readonly items: {
4398
+ readonly type: "ref";
4399
+ readonly ref: "lex:app.bsky.actor.defs#verificationView";
4400
+ };
4401
+ };
4402
+ readonly verifiedStatus: {
4403
+ readonly type: "string";
4404
+ readonly description: "The user's status as a verified account.";
4405
+ readonly knownValues: ["valid", "invalid", "none"];
4406
+ };
4407
+ readonly trustedVerifierStatus: {
4408
+ readonly type: "string";
4409
+ readonly description: "The user's status as a trusted verifier.";
4410
+ readonly knownValues: ["valid", "invalid", "none"];
4411
+ };
4412
+ };
4413
+ };
4414
+ readonly verificationView: {
4415
+ readonly type: "object";
4416
+ readonly description: "An individual verification for an associated subject.";
4417
+ readonly required: ["issuer", "uri", "isValid", "createdAt"];
4418
+ readonly properties: {
4419
+ readonly issuer: {
4420
+ readonly type: "string";
4421
+ readonly description: "The user who issued this verification.";
4422
+ readonly format: "did";
4423
+ };
4424
+ readonly uri: {
4425
+ readonly type: "string";
4426
+ readonly description: "The AT-URI of the verification record.";
4427
+ readonly format: "at-uri";
4428
+ };
4429
+ readonly isValid: {
4430
+ readonly type: "boolean";
4431
+ readonly description: "True if the verification passes validation, otherwise false.";
4432
+ };
4433
+ readonly createdAt: {
4434
+ readonly type: "string";
4435
+ readonly description: "Timestamp when the verification was created.";
4436
+ readonly format: "datetime";
4437
+ };
4438
+ };
4439
+ };
4377
4440
  readonly preferences: {
4378
4441
  readonly type: "array";
4379
4442
  readonly items: {
@@ -10238,6 +10301,10 @@ export declare const schemaDict: {
10238
10301
  readonly type: "boolean";
10239
10302
  readonly description: "Set to true when the actor cannot actively participate in converations";
10240
10303
  };
10304
+ readonly verification: {
10305
+ readonly type: "ref";
10306
+ readonly ref: "lex:app.bsky.actor.defs#verificationState";
10307
+ };
10241
10308
  };
10242
10309
  };
10243
10310
  };
@@ -15493,6 +15560,10 @@ export declare const schemas: ({
15493
15560
  readonly type: "string";
15494
15561
  readonly format: "datetime";
15495
15562
  };
15563
+ readonly verification: {
15564
+ readonly type: "ref";
15565
+ readonly ref: "lex:app.bsky.actor.defs#verificationState";
15566
+ };
15496
15567
  };
15497
15568
  };
15498
15569
  readonly profileView: {
@@ -15544,6 +15615,10 @@ export declare const schemas: ({
15544
15615
  readonly ref: "lex:com.atproto.label.defs#label";
15545
15616
  };
15546
15617
  };
15618
+ readonly verification: {
15619
+ readonly type: "ref";
15620
+ readonly ref: "lex:app.bsky.actor.defs#verificationState";
15621
+ };
15547
15622
  };
15548
15623
  };
15549
15624
  readonly profileViewDetailed: {
@@ -15616,6 +15691,10 @@ export declare const schemas: ({
15616
15691
  readonly type: "ref";
15617
15692
  readonly ref: "lex:com.atproto.repo.strongRef";
15618
15693
  };
15694
+ readonly verification: {
15695
+ readonly type: "ref";
15696
+ readonly ref: "lex:app.bsky.actor.defs#verificationState";
15697
+ };
15619
15698
  };
15620
15699
  };
15621
15700
  readonly profileAssociated: {
@@ -15704,6 +15783,57 @@ export declare const schemas: ({
15704
15783
  };
15705
15784
  };
15706
15785
  };
15786
+ readonly verificationState: {
15787
+ readonly type: "object";
15788
+ readonly description: "Represents the verification information about the user this object is attached to.";
15789
+ readonly required: ["verifications", "verifiedStatus", "trustedVerifierStatus"];
15790
+ readonly properties: {
15791
+ readonly verifications: {
15792
+ readonly type: "array";
15793
+ readonly description: "All verifications issued by trusted verifiers on behalf of this user. Verifications by untrusted verifiers are not included.";
15794
+ readonly items: {
15795
+ readonly type: "ref";
15796
+ readonly ref: "lex:app.bsky.actor.defs#verificationView";
15797
+ };
15798
+ };
15799
+ readonly verifiedStatus: {
15800
+ readonly type: "string";
15801
+ readonly description: "The user's status as a verified account.";
15802
+ readonly knownValues: ["valid", "invalid", "none"];
15803
+ };
15804
+ readonly trustedVerifierStatus: {
15805
+ readonly type: "string";
15806
+ readonly description: "The user's status as a trusted verifier.";
15807
+ readonly knownValues: ["valid", "invalid", "none"];
15808
+ };
15809
+ };
15810
+ };
15811
+ readonly verificationView: {
15812
+ readonly type: "object";
15813
+ readonly description: "An individual verification for an associated subject.";
15814
+ readonly required: ["issuer", "uri", "isValid", "createdAt"];
15815
+ readonly properties: {
15816
+ readonly issuer: {
15817
+ readonly type: "string";
15818
+ readonly description: "The user who issued this verification.";
15819
+ readonly format: "did";
15820
+ };
15821
+ readonly uri: {
15822
+ readonly type: "string";
15823
+ readonly description: "The AT-URI of the verification record.";
15824
+ readonly format: "at-uri";
15825
+ };
15826
+ readonly isValid: {
15827
+ readonly type: "boolean";
15828
+ readonly description: "True if the verification passes validation, otherwise false.";
15829
+ };
15830
+ readonly createdAt: {
15831
+ readonly type: "string";
15832
+ readonly description: "Timestamp when the verification was created.";
15833
+ readonly format: "datetime";
15834
+ };
15835
+ };
15836
+ };
15707
15837
  readonly preferences: {
15708
15838
  readonly type: "array";
15709
15839
  readonly items: {
@@ -21468,6 +21598,10 @@ export declare const schemas: ({
21468
21598
  readonly type: "boolean";
21469
21599
  readonly description: "Set to true when the actor cannot actively participate in converations";
21470
21600
  };
21601
+ readonly verification: {
21602
+ readonly type: "ref";
21603
+ readonly ref: "lex:app.bsky.actor.defs#verificationState";
21604
+ };
21471
21605
  };
21472
21606
  };
21473
21607
  };
@@ -1 +1 @@
1
- {"version":3,"file":"lexicons.d.ts","sourceRoot":"","sources":["../../src/lexicon/lexicons.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAEL,QAAQ,EAER,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAA;AAGzB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAw9XwB,CAAA;AAC/C,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAmD,CAAA;AACvE,eAAO,MAAM,QAAQ,EAAE,QAAgC,CAAA;AAEvD,wBAAgB,QAAQ,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAClD,CAAC,EAAE,OAAO,EACV,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,IAAI,GACjB,gBAAgB,CAAC,CAAC,CAAC,CAAA;AACtB,wBAAgB,QAAQ,CAAC,CAAC,SAAS;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACnD,CAAC,EAAE,OAAO,EACV,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,KAAK,GACnB,gBAAgB,CAAC,CAAC,CAAC,CAAA;AAiBtB,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8ON,CAAA"}
1
+ {"version":3,"file":"lexicons.d.ts","sourceRoot":"","sources":["../../src/lexicon/lexicons.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAEL,QAAQ,EAER,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAA;AAGzB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8hYwB,CAAA;AAC/C,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAmD,CAAA;AACvE,eAAO,MAAM,QAAQ,EAAE,QAAgC,CAAA;AAEvD,wBAAgB,QAAQ,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAClD,CAAC,EAAE,OAAO,EACV,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,IAAI,GACjB,gBAAgB,CAAC,CAAC,CAAC,CAAA;AACtB,wBAAgB,QAAQ,CAAC,CAAC,SAAS;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACnD,CAAC,EAAE,OAAO,EACV,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,KAAK,GACnB,gBAAgB,CAAC,CAAC,CAAC,CAAA;AAiBtB,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8ON,CAAA"}