@mercuryo-ai/agentbrowse 0.2.61 → 0.2.63

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 (82) hide show
  1. package/CHANGELOG.md +33 -1
  2. package/README.md +102 -9
  3. package/dist/browser-session-state.d.ts +2 -11
  4. package/dist/browser-session-state.d.ts.map +1 -1
  5. package/dist/browser-session-state.js +0 -4
  6. package/dist/commands/act.d.ts.map +1 -1
  7. package/dist/commands/act.js +14 -5
  8. package/dist/commands/attach.d.ts +1 -3
  9. package/dist/commands/attach.d.ts.map +1 -1
  10. package/dist/commands/attach.js +0 -2
  11. package/dist/commands/browser-status.d.ts +0 -2
  12. package/dist/commands/browser-status.d.ts.map +1 -1
  13. package/dist/commands/browser-status.js +1 -7
  14. package/dist/commands/interaction-kernel.d.ts +1 -1
  15. package/dist/commands/interaction-kernel.d.ts.map +1 -1
  16. package/dist/commands/interaction-kernel.js +1 -1
  17. package/dist/commands/launch.d.ts +0 -1
  18. package/dist/commands/launch.d.ts.map +1 -1
  19. package/dist/commands/launch.js +0 -4
  20. package/dist/commands/observe-accessibility.d.ts.map +1 -1
  21. package/dist/commands/observe-accessibility.js +36 -2
  22. package/dist/commands/observe-inventory.d.ts +49 -7
  23. package/dist/commands/observe-inventory.d.ts.map +1 -1
  24. package/dist/commands/observe-inventory.js +807 -96
  25. package/dist/commands/observe-persistence.d.ts.map +1 -1
  26. package/dist/commands/observe-persistence.js +49 -6
  27. package/dist/commands/observe-projection.d.ts +6 -2
  28. package/dist/commands/observe-projection.d.ts.map +1 -1
  29. package/dist/commands/observe-projection.js +251 -27
  30. package/dist/commands/observe-semantics.d.ts +1 -0
  31. package/dist/commands/observe-semantics.d.ts.map +1 -1
  32. package/dist/commands/observe-semantics.js +541 -135
  33. package/dist/commands/observe-signals.d.ts +4 -4
  34. package/dist/commands/observe-signals.d.ts.map +1 -1
  35. package/dist/commands/observe-signals.js +2 -2
  36. package/dist/commands/observe-surfaces.d.ts +2 -1
  37. package/dist/commands/observe-surfaces.d.ts.map +1 -1
  38. package/dist/commands/observe-surfaces.js +143 -45
  39. package/dist/commands/observe.d.ts +5 -1
  40. package/dist/commands/observe.d.ts.map +1 -1
  41. package/dist/commands/observe.js +15 -11
  42. package/dist/commands/semantic-observe.d.ts.map +1 -1
  43. package/dist/commands/semantic-observe.js +43 -0
  44. package/dist/library.d.ts +2 -1
  45. package/dist/library.d.ts.map +1 -1
  46. package/dist/library.js +2 -1
  47. package/dist/match-resolve-fill.d.ts +196 -0
  48. package/dist/match-resolve-fill.d.ts.map +1 -0
  49. package/dist/match-resolve-fill.js +700 -0
  50. package/dist/match-resolve-fill.test-support.d.ts +34 -0
  51. package/dist/match-resolve-fill.test-support.d.ts.map +1 -0
  52. package/dist/match-resolve-fill.test-support.js +81 -0
  53. package/dist/runtime-protected-state.d.ts.map +1 -1
  54. package/dist/runtime-protected-state.js +12 -0
  55. package/dist/runtime-state.d.ts +6 -0
  56. package/dist/runtime-state.d.ts.map +1 -1
  57. package/dist/runtime-state.js +6 -0
  58. package/dist/secrets/form-matcher.d.ts.map +1 -1
  59. package/dist/secrets/form-matcher.js +76 -27
  60. package/dist/secrets/protected-exact-value-redaction.d.ts.map +1 -1
  61. package/dist/secrets/protected-exact-value-redaction.js +6 -0
  62. package/dist/secrets/protected-fill.js +3 -3
  63. package/dist/session.d.ts +3 -3
  64. package/dist/session.d.ts.map +1 -1
  65. package/dist/session.js +2 -2
  66. package/dist/solver/browser-launcher.d.ts.map +1 -1
  67. package/dist/solver/browser-launcher.js +2 -1
  68. package/dist/testing.d.ts +1 -0
  69. package/dist/testing.d.ts.map +1 -1
  70. package/dist/testing.js +1 -0
  71. package/docs/README.md +28 -11
  72. package/docs/api-reference.md +311 -19
  73. package/docs/assistive-runtime.md +41 -16
  74. package/docs/getting-started.md +45 -1
  75. package/docs/integration-checklist.md +32 -3
  76. package/docs/match-resolve-fill.md +699 -0
  77. package/docs/protected-fill.md +373 -91
  78. package/docs/testing.md +147 -15
  79. package/docs/troubleshooting.md +5 -0
  80. package/examples/README.md +7 -0
  81. package/examples/match-resolve-fill.ts +107 -0
  82. package/package.json +4 -2
@@ -0,0 +1,196 @@
1
+ import type { BrowserCommandSession } from './browser-session-state.js';
2
+ import { type ActResult } from './commands/act.js';
3
+ import { type ObservedFieldValueType } from './secrets/observed-field-resolution.js';
4
+ import type { ProtectedFillForm } from './protected-fill.js';
5
+ import type { TargetDescriptor } from './runtime-state.js';
6
+ export type AgentbrowseMatchValue = string | number;
7
+ export type AgentbrowseMatchApplicability = {
8
+ target: 'global' | 'host';
9
+ value?: string;
10
+ };
11
+ export interface AgentbrowseMatchResolutionRequest {
12
+ kind: string;
13
+ key?: string;
14
+ params?: Record<string, unknown>;
15
+ }
16
+ export interface AgentbrowseMatchCandidate {
17
+ candidateRef?: string;
18
+ fieldKey: string;
19
+ value?: AgentbrowseMatchValue;
20
+ type?: ObservedFieldValueType;
21
+ label?: string;
22
+ semanticTags?: string[];
23
+ applicability?: AgentbrowseMatchApplicability;
24
+ resolve?: AgentbrowseMatchResolutionRequest;
25
+ }
26
+ export interface AgentbrowseMatchStore {
27
+ entries(): ReadonlyArray<AgentbrowseMatchCandidate>;
28
+ read(candidateRef: string): AgentbrowseMatchValue | undefined;
29
+ }
30
+ export interface AgentbrowseGroupMatchCandidate {
31
+ candidateRef?: string;
32
+ itemRef?: string;
33
+ label?: string;
34
+ fieldKeys: ReadonlyArray<string>;
35
+ confidence?: 'high' | 'medium';
36
+ applicability?: AgentbrowseMatchApplicability;
37
+ resolve?: AgentbrowseMatchResolutionRequest;
38
+ artifact?: unknown;
39
+ }
40
+ export interface AgentbrowseGroupMatchStore {
41
+ entries(): ReadonlyArray<AgentbrowseGroupMatchCandidate>;
42
+ readArtifact(candidateRef: string): unknown;
43
+ }
44
+ export type AgentbrowseMatchSource = Record<string, AgentbrowseMatchValue> | ReadonlyArray<AgentbrowseMatchCandidate> | AgentbrowseMatchStore | ReadonlyArray<AgentbrowseGroupMatchCandidate> | AgentbrowseGroupMatchStore;
45
+ export interface AgentbrowseMatchOptions {
46
+ from: AgentbrowseMatchSource;
47
+ host?: string;
48
+ protectedTargetRefs?: ReadonlySet<string>;
49
+ }
50
+ export interface AgentbrowseResolutionPlan {
51
+ targetRef: string;
52
+ candidateRef: string;
53
+ fieldKey: string;
54
+ type?: ObservedFieldValueType;
55
+ resolve: AgentbrowseMatchResolutionRequest;
56
+ }
57
+ export interface AgentbrowseGroupResolutionPlan {
58
+ fillRef: string;
59
+ pageRef: string;
60
+ scopeRef?: string;
61
+ purpose: string;
62
+ candidateRef: string;
63
+ itemRef?: string;
64
+ fieldKeys: ReadonlyArray<string>;
65
+ resolve: AgentbrowseMatchResolutionRequest;
66
+ }
67
+ export type AgentbrowseReadyMatchResult = {
68
+ kind: 'ready';
69
+ targetRef: string;
70
+ fieldKey: string;
71
+ candidateRef: string;
72
+ valueRef: string;
73
+ confidence: 'high' | 'medium';
74
+ };
75
+ export type AgentbrowseNeedsResolutionMatchResult = {
76
+ kind: 'needs_resolution';
77
+ targetRef: string;
78
+ fieldKey: string;
79
+ candidateRef: string;
80
+ confidence: 'high' | 'medium';
81
+ plan: AgentbrowseResolutionPlan;
82
+ };
83
+ export type AgentbrowseReadyGroupMatchResult = {
84
+ kind: 'ready_group';
85
+ fillRef: string;
86
+ purpose: string;
87
+ candidateRef: string;
88
+ itemRef?: string;
89
+ fieldKeys: ReadonlyArray<string>;
90
+ artifactRef: string;
91
+ confidence: 'high' | 'medium';
92
+ requestId?: string;
93
+ resolutionPath?: string;
94
+ claimedAt?: string;
95
+ };
96
+ export type AgentbrowseNeedsResolutionGroupMatchResult = {
97
+ kind: 'needs_resolution_group';
98
+ fillRef: string;
99
+ purpose: string;
100
+ candidateRef: string;
101
+ itemRef?: string;
102
+ fieldKeys: ReadonlyArray<string>;
103
+ confidence: 'high' | 'medium';
104
+ plan: AgentbrowseGroupResolutionPlan;
105
+ };
106
+ export type AgentbrowseAmbiguousGroupMatchResult = {
107
+ kind: 'ambiguous_group';
108
+ fillRef: string;
109
+ candidates: string[];
110
+ };
111
+ export type AgentbrowseNoGroupMatchResult = {
112
+ kind: 'no_match_group';
113
+ fillRef: string;
114
+ reason: 'no_candidate' | 'scope_ineligible' | 'incompatible_shape' | 'low_confidence';
115
+ };
116
+ export type AgentbrowseAmbiguousMatchResult = {
117
+ kind: 'ambiguous';
118
+ targetRef: string;
119
+ candidates: string[];
120
+ };
121
+ export type AgentbrowseNoMatchResult = {
122
+ kind: 'no_match';
123
+ targetRef: string;
124
+ reason: 'protected_target' | 'no_candidate' | 'scope_ineligible' | 'incompatible_shape' | 'low_confidence';
125
+ };
126
+ export type AgentbrowseMatchResult = AgentbrowseReadyMatchResult | AgentbrowseNeedsResolutionMatchResult | AgentbrowseAmbiguousMatchResult | AgentbrowseNoMatchResult | AgentbrowseReadyGroupMatchResult | AgentbrowseNeedsResolutionGroupMatchResult | AgentbrowseAmbiguousGroupMatchResult | AgentbrowseNoGroupMatchResult;
127
+ export type AgentbrowseResolvableMatchResult = AgentbrowseNeedsResolutionMatchResult | AgentbrowseNeedsResolutionGroupMatchResult;
128
+ export type AgentbrowseResolvedValueResource = {
129
+ kind: 'value';
130
+ value: AgentbrowseMatchValue;
131
+ };
132
+ export type AgentbrowseResolvedArtifactResource = {
133
+ kind: 'artifact';
134
+ artifact: unknown;
135
+ itemRef?: string;
136
+ requestId?: string;
137
+ resolutionPath?: string;
138
+ claimedAt?: string;
139
+ };
140
+ export type AgentbrowseResolvedResource = AgentbrowseResolvedValueResource | AgentbrowseResolvedArtifactResource;
141
+ export interface AgentbrowseReadyGroupFillInput {
142
+ candidateRef: string;
143
+ itemRef?: string;
144
+ fieldKeys: ReadonlyArray<string>;
145
+ artifact: unknown;
146
+ requestId?: string;
147
+ resolutionPath?: string;
148
+ claimedAt?: string;
149
+ }
150
+ export interface AgentbrowseGroupFillHandler {
151
+ fill(session: BrowserCommandSession, subject: ProtectedFillForm, ready: AgentbrowseReadyGroupFillInput): Promise<Record<string, unknown> & {
152
+ success: boolean;
153
+ }>;
154
+ }
155
+ export interface AgentbrowseMatchResolver {
156
+ resolve(plan: AgentbrowseResolutionPlan | AgentbrowseGroupResolutionPlan): Promise<AgentbrowseResolvedResource>;
157
+ resolveBatch?(plans: ReadonlyArray<AgentbrowseResolutionPlan | AgentbrowseGroupResolutionPlan>): Promise<ReadonlyArray<AgentbrowseResolvedResource>>;
158
+ fill?(session: BrowserCommandSession, subject: ProtectedFillForm, ready: AgentbrowseReadyGroupFillInput): Promise<Record<string, unknown> & {
159
+ success: boolean;
160
+ }>;
161
+ }
162
+ export interface AgentbrowseResolveOptions {
163
+ with: AgentbrowseMatchResolver;
164
+ }
165
+ export interface AgentbrowseFillOptions {
166
+ resolver?: AgentbrowseMatchResolver | AgentbrowseGroupFillHandler;
167
+ }
168
+ export type AgentbrowseFillFailureResult = {
169
+ success: false;
170
+ failureSurface: 'contract';
171
+ error: 'match_no_match' | 'match_ambiguous' | 'match_resolver_required' | 'match_value_unavailable' | 'match_artifact_unavailable';
172
+ outcomeType: 'blocked' | 'unsupported';
173
+ message: string;
174
+ reason: string;
175
+ targetRef?: string;
176
+ fillRef?: string;
177
+ action: 'fill';
178
+ };
179
+ export type AgentbrowseFillResult = ActResult | AgentbrowseFillFailureResult | (Record<string, unknown> & {
180
+ success: boolean;
181
+ });
182
+ type MatchableTarget = {
183
+ ref: string;
184
+ } & Partial<Pick<TargetDescriptor, 'pageRef' | 'kind' | 'label' | 'displayLabel' | 'placeholder' | 'inputName' | 'inputType' | 'autocomplete' | 'selection' | 'structure' | 'capability'>> & {
185
+ context?: TargetDescriptor['context'] | string;
186
+ availability?: TargetDescriptor['availability'] | string;
187
+ lifecycle?: TargetDescriptor['lifecycle'];
188
+ allowedActions?: TargetDescriptor['allowedActions'];
189
+ };
190
+ type MatchableGroup = Pick<ProtectedFillForm, 'fillRef' | 'pageRef' | 'scopeRef' | 'purpose' | 'fields' | 'observedAt' | 'presence'>;
191
+ export declare function match(subject: MatchableTarget | MatchableGroup, options: AgentbrowseMatchOptions): Promise<AgentbrowseMatchResult>;
192
+ export declare function resolve(plan: ReadonlyArray<AgentbrowseMatchResult>, options: AgentbrowseResolveOptions): Promise<AgentbrowseMatchResult[]>;
193
+ export declare function resolve(plan: AgentbrowseMatchResult, options: AgentbrowseResolveOptions): Promise<AgentbrowseMatchResult>;
194
+ export declare function fill(session: BrowserCommandSession, subject: Pick<TargetDescriptor, 'ref'> | ProtectedFillForm, plan: AgentbrowseMatchResult, options?: AgentbrowseFillOptions): Promise<AgentbrowseFillResult>;
195
+ export {};
196
+ //# sourceMappingURL=match-resolve-fill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"match-resolve-fill.d.ts","sourceRoot":"","sources":["../src/match-resolve-fill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,CAAC;AACpD,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,yBAAyB;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,qBAAqB,CAAC;IAC9B,IAAI,CAAC,EAAE,sBAAsB,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,6BAA6B,CAAC;IAC9C,OAAO,CAAC,EAAE,iCAAiC,CAAC;CAC7C;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,IAAI,aAAa,CAAC,yBAAyB,CAAC,CAAC;IACpD,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAAC;CAC/D;AAED,MAAM,WAAW,8BAA8B;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC/B,aAAa,CAAC,EAAE,6BAA6B,CAAC;IAC9C,OAAO,CAAC,EAAE,iCAAiC,CAAC;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,IAAI,aAAa,CAAC,8BAA8B,CAAC,CAAC;IACzD,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC;CAC7C;AAED,MAAM,MAAM,sBAAsB,GAC9B,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,GACrC,aAAa,CAAC,yBAAyB,CAAC,GACxC,qBAAqB,GACrB,aAAa,CAAC,8BAA8B,CAAC,GAC7C,0BAA0B,CAAC;AAE/B,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,sBAAsB,CAAC;IAC9B,OAAO,EAAE,iCAAiC,CAAC;CAC5C;AAED,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,EAAE,iCAAiC,CAAC;CAC5C;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG;IAClD,IAAI,EAAE,kBAAkB,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC9B,IAAI,EAAE,yBAAyB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,0CAA0C,GAAG;IACvD,IAAI,EAAE,wBAAwB,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC9B,IAAI,EAAE,8BAA8B,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,cAAc,GAAG,kBAAkB,GAAG,oBAAoB,GAAG,gBAAgB,CAAC;CACvF,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EACF,kBAAkB,GAClB,cAAc,GACd,kBAAkB,GAClB,oBAAoB,GACpB,gBAAgB,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B,2BAA2B,GAC3B,qCAAqC,GACrC,+BAA+B,GAC/B,wBAAwB,GACxB,gCAAgC,GAChC,0CAA0C,GAC1C,oCAAoC,GACpC,6BAA6B,CAAC;AAElC,MAAM,MAAM,gCAAgC,GACxC,qCAAqC,GACrC,0CAA0C,CAAC;AAE/C,MAAM,MAAM,gCAAgC,GAAG;IAC7C,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,qBAAqB,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG;IAChD,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GACnC,gCAAgC,GAChC,mCAAmC,CAAC;AAExC,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,CACF,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,CACL,IAAI,EAAE,yBAAyB,GAAG,8BAA8B,GAC/D,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACxC,YAAY,CAAC,CACX,KAAK,EAAE,aAAa,CAAC,yBAAyB,GAAG,8BAA8B,CAAC,GAC/E,OAAO,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC,CAAC;IACvD,IAAI,CAAC,CACH,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,wBAAwB,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,wBAAwB,GAAG,2BAA2B,CAAC;CACnE;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,KAAK,CAAC;IACf,cAAc,EAAE,UAAU,CAAC;IAC3B,KAAK,EACD,gBAAgB,GAChB,iBAAiB,GACjB,yBAAyB,GACzB,yBAAyB,GACzB,4BAA4B,CAAC;IACjC,WAAW,EAAE,SAAS,GAAG,aAAa,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,4BAA4B,GAC5B,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAErD,KAAK,eAAe,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAC9C,IAAI,CACF,gBAAgB,EACd,SAAS,GACT,MAAM,GACN,OAAO,GACP,cAAc,GACd,aAAa,GACb,WAAW,GACX,WAAW,GACX,cAAc,GACd,WAAW,GACX,WAAW,GACX,YAAY,CACf,CACF,GAAG;IAIA,OAAO,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC/C,YAAY,CAAC,EAAE,gBAAgB,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC;IACzD,SAAS,CAAC,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC1C,cAAc,CAAC,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;CACrD,CAAC;AAcJ,KAAK,cAAc,GAAG,IAAI,CACxB,iBAAiB,EACjB,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,CACtF,CAAC;AAujBF,wBAAsB,KAAK,CACzB,OAAO,EAAE,eAAe,GAAG,cAAc,EACzC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CAgFjC;AAkDD,wBAAsB,OAAO,CAC3B,IAAI,EAAE,aAAa,CAAC,sBAAsB,CAAC,EAC3C,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;AACrC,wBAAsB,OAAO,CAC3B,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,sBAAsB,CAAC,CAAC;AA4DnC,wBAAsB,IAAI,CACxB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,iBAAiB,EAC1D,IAAI,EAAE,sBAAsB,EAC5B,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,qBAAqB,CAAC,CAyJhC"}