@itwin/core-geometry 4.1.0-dev.24 → 4.1.0-dev.26
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.
- package/lib/cjs/curve/Arc3d.d.ts +1 -0
- package/lib/cjs/curve/Arc3d.d.ts.map +1 -1
- package/lib/cjs/curve/Arc3d.js +1 -0
- package/lib/cjs/curve/Arc3d.js.map +1 -1
- package/lib/cjs/curve/CurveCollection.d.ts +36 -26
- package/lib/cjs/curve/CurveCollection.d.ts.map +1 -1
- package/lib/cjs/curve/CurveCollection.js +46 -39
- package/lib/cjs/curve/CurveCollection.js.map +1 -1
- package/lib/cjs/curve/CurveCurve.d.ts.map +1 -1
- package/lib/cjs/curve/CurveCurve.js.map +1 -1
- package/lib/cjs/curve/CurveLocationDetail.d.ts +6 -6
- package/lib/cjs/curve/CurveLocationDetail.d.ts.map +1 -1
- package/lib/cjs/curve/CurveLocationDetail.js +9 -7
- package/lib/cjs/curve/CurveLocationDetail.js.map +1 -1
- package/lib/cjs/curve/CurvePrimitive.d.ts +4 -3
- package/lib/cjs/curve/CurvePrimitive.d.ts.map +1 -1
- package/lib/cjs/curve/CurvePrimitive.js +4 -3
- package/lib/cjs/curve/CurvePrimitive.js.map +1 -1
- package/lib/cjs/curve/LineSegment3d.d.ts +6 -4
- package/lib/cjs/curve/LineSegment3d.d.ts.map +1 -1
- package/lib/cjs/curve/LineSegment3d.js +4 -4
- package/lib/cjs/curve/LineSegment3d.js.map +1 -1
- package/lib/cjs/curve/LineString3d.d.ts +1 -1
- package/lib/cjs/curve/LineString3d.d.ts.map +1 -1
- package/lib/cjs/curve/LineString3d.js +1 -1
- package/lib/cjs/curve/LineString3d.js.map +1 -1
- package/lib/cjs/curve/RegionOps.d.ts +13 -18
- package/lib/cjs/curve/RegionOps.d.ts.map +1 -1
- package/lib/cjs/curve/RegionOps.js +13 -18
- package/lib/cjs/curve/RegionOps.js.map +1 -1
- package/lib/cjs/curve/StrokeOptions.d.ts.map +1 -1
- package/lib/cjs/curve/StrokeOptions.js +6 -2
- package/lib/cjs/curve/StrokeOptions.js.map +1 -1
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.d.ts +56 -34
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -1
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js +152 -87
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
- package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.d.ts +36 -32
- package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js +35 -32
- package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
- package/lib/cjs/geometry3d/Range.d.ts +1 -1
- package/lib/cjs/geometry3d/Range.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Range.js +1 -1
- package/lib/cjs/geometry3d/Range.js.map +1 -1
- package/lib/cjs/geometry3d/Ray3d.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Ray3d.js.map +1 -1
- package/lib/esm/curve/Arc3d.d.ts +1 -0
- package/lib/esm/curve/Arc3d.d.ts.map +1 -1
- package/lib/esm/curve/Arc3d.js +1 -0
- package/lib/esm/curve/Arc3d.js.map +1 -1
- package/lib/esm/curve/CurveCollection.d.ts +36 -26
- package/lib/esm/curve/CurveCollection.d.ts.map +1 -1
- package/lib/esm/curve/CurveCollection.js +46 -39
- package/lib/esm/curve/CurveCollection.js.map +1 -1
- package/lib/esm/curve/CurveCurve.d.ts.map +1 -1
- package/lib/esm/curve/CurveCurve.js.map +1 -1
- package/lib/esm/curve/CurveLocationDetail.d.ts +6 -6
- package/lib/esm/curve/CurveLocationDetail.d.ts.map +1 -1
- package/lib/esm/curve/CurveLocationDetail.js +9 -7
- package/lib/esm/curve/CurveLocationDetail.js.map +1 -1
- package/lib/esm/curve/CurvePrimitive.d.ts +4 -3
- package/lib/esm/curve/CurvePrimitive.d.ts.map +1 -1
- package/lib/esm/curve/CurvePrimitive.js +4 -3
- package/lib/esm/curve/CurvePrimitive.js.map +1 -1
- package/lib/esm/curve/LineSegment3d.d.ts +6 -4
- package/lib/esm/curve/LineSegment3d.d.ts.map +1 -1
- package/lib/esm/curve/LineSegment3d.js +4 -4
- package/lib/esm/curve/LineSegment3d.js.map +1 -1
- package/lib/esm/curve/LineString3d.d.ts +1 -1
- package/lib/esm/curve/LineString3d.d.ts.map +1 -1
- package/lib/esm/curve/LineString3d.js +1 -1
- package/lib/esm/curve/LineString3d.js.map +1 -1
- package/lib/esm/curve/RegionOps.d.ts +13 -18
- package/lib/esm/curve/RegionOps.d.ts.map +1 -1
- package/lib/esm/curve/RegionOps.js +13 -18
- package/lib/esm/curve/RegionOps.js.map +1 -1
- package/lib/esm/curve/StrokeOptions.d.ts.map +1 -1
- package/lib/esm/curve/StrokeOptions.js +6 -2
- package/lib/esm/curve/StrokeOptions.js.map +1 -1
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts +56 -34
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -1
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.js +152 -87
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
- package/lib/esm/geometry3d/Plane3dByOriginAndVectors.d.ts +36 -32
- package/lib/esm/geometry3d/Plane3dByOriginAndVectors.d.ts.map +1 -1
- package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js +35 -32
- package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
- package/lib/esm/geometry3d/Range.d.ts +1 -1
- package/lib/esm/geometry3d/Range.d.ts.map +1 -1
- package/lib/esm/geometry3d/Range.js +1 -1
- package/lib/esm/geometry3d/Range.js.map +1 -1
- package/lib/esm/geometry3d/Ray3d.d.ts.map +1 -1
- package/lib/esm/geometry3d/Ray3d.js.map +1 -1
- package/package.json +3 -3
|
@@ -3,36 +3,54 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Angle } from "../../geometry3d/Angle";
|
|
5
5
|
import { Point3d } from "../../geometry3d/Point3dVector3d";
|
|
6
|
-
import { CurveCollection } from "../CurveCollection";
|
|
6
|
+
import { CurveChain, CurveCollection } from "../CurveCollection";
|
|
7
7
|
import { CurvePrimitive } from "../CurvePrimitive";
|
|
8
8
|
import { Loop } from "../Loop";
|
|
9
9
|
import { Path } from "../Path";
|
|
10
10
|
import { StrokeOptions } from "../StrokeOptions";
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* *
|
|
15
|
-
*
|
|
16
|
-
* *
|
|
17
|
-
*
|
|
18
|
-
* *
|
|
12
|
+
* Control parameters for joint construction.
|
|
13
|
+
* * Define a "joint" as the common point between adjacent segments of the input curve.
|
|
14
|
+
* * Define the "turn angle" at a joint to be the angle in [0,pi] between the first derivatives (tangents) of
|
|
15
|
+
* the segments at the joint.
|
|
16
|
+
* * When creating offsets, if an offset needs to do an "outside" turn, the first applicable construction is applied:
|
|
17
|
+
* * If the turn angle is larger than `options.minArcDegrees`, a circular arc is constructed to offset the joint.
|
|
18
|
+
* * If the turn angle is less than or equal to `options.maxChamferTurnDegrees`, extend curves along tangent to
|
|
19
|
+
* single intersection point (to create a sharp corner).
|
|
20
|
+
* * If the turn angle is larger than `options.maxChamferDegrees`, the joint is offset with a line string whose edges:
|
|
21
|
+
* * lie outside the arc that would have been created by the first construction
|
|
22
|
+
* * have uniform turn angle less than `options.maxChamferDegrees`
|
|
23
|
+
* * touch the arc at their midpoint (except first and last edge).
|
|
19
24
|
* @public
|
|
20
25
|
*/
|
|
21
26
|
export declare class JointOptions {
|
|
22
|
-
/**
|
|
23
|
-
*
|
|
27
|
+
/**
|
|
28
|
+
* Smallest arc to construct.
|
|
29
|
+
* * If this control angle is 180 degrees or more, arcs are never created.
|
|
24
30
|
*/
|
|
25
31
|
minArcDegrees: number;
|
|
32
|
+
/** Largest turn angle at which to construct a sharp corner, or largest turn angle in a multi-segment chamfer. */
|
|
26
33
|
maxChamferTurnDegrees: number;
|
|
34
|
+
/**
|
|
35
|
+
* Whether to remove the internal turn angle upper bound for sharp corner construction.
|
|
36
|
+
* * By default, a sharp corner is not created at a joint when the turn angle is too large, so as to avoid offsets whose
|
|
37
|
+
* ranges blow up. Internally, this is implemented by applying an upper bound of 120 degrees to `maxChamferTurnDegrees`.
|
|
38
|
+
* * When `allowSharpestCorners` is true, this internal upper bound is removed, allowing sharp corners for turn angles
|
|
39
|
+
* up to `maxChamferTurnDegrees`.
|
|
40
|
+
* * Thus, if you know your input turn angles are no greater than `maxChamferTurnDegrees`, you can create an offset
|
|
41
|
+
* with sharp corners at each joint by setting `minArcDegrees` to 180 and `allowSharpestCorners` to true.
|
|
42
|
+
*/
|
|
43
|
+
allowSharpestCorners: boolean;
|
|
27
44
|
/** Offset distance, positive to left of base curve. */
|
|
28
45
|
leftOffsetDistance: number;
|
|
29
46
|
/** Whether to offset elliptical arcs as elliptical arcs (true) or as B-spline curves (false, default). */
|
|
30
47
|
preserveEllipticalArcs: boolean;
|
|
31
|
-
/**
|
|
48
|
+
/**
|
|
49
|
+
* Construct JointOptions.
|
|
32
50
|
* * leftOffsetDistance is required
|
|
33
51
|
* * minArcDegrees and maxChamferDegrees are optional.
|
|
34
52
|
*/
|
|
35
|
-
constructor(leftOffsetDistance: number, minArcDegrees?: number, maxChamferDegrees?: number, preserveEllipticalArcs?: boolean);
|
|
53
|
+
constructor(leftOffsetDistance: number, minArcDegrees?: number, maxChamferDegrees?: number, preserveEllipticalArcs?: boolean, allowSharpestCorners?: boolean);
|
|
36
54
|
/** Return a deep clone. */
|
|
37
55
|
clone(): JointOptions;
|
|
38
56
|
/** Copy values of input options */
|
|
@@ -44,9 +62,10 @@ export declare class JointOptions {
|
|
|
44
62
|
* @param leftOffsetDistanceOrOptions
|
|
45
63
|
*/
|
|
46
64
|
static create(leftOffsetDistanceOrOptions: number | JointOptions): JointOptions;
|
|
47
|
-
/**
|
|
65
|
+
/**
|
|
66
|
+
/** Return true if the options indicate this amount of turn should be handled with an arc. */
|
|
48
67
|
needArc(theta: Angle): boolean;
|
|
49
|
-
/**
|
|
68
|
+
/** Return the number of corners needed to chamfer the given turn angle. */
|
|
50
69
|
numChamferPoints(theta: Angle): number;
|
|
51
70
|
}
|
|
52
71
|
/**
|
|
@@ -64,13 +83,17 @@ export declare class OffsetOptions {
|
|
|
64
83
|
set minArcDegrees(value: number);
|
|
65
84
|
get maxChamferTurnDegrees(): number;
|
|
66
85
|
set maxChamferTurnDegrees(value: number);
|
|
86
|
+
get allowSharpestCorners(): boolean;
|
|
87
|
+
set allowSharpestCorners(value: boolean);
|
|
67
88
|
get leftOffsetDistance(): number;
|
|
68
89
|
set leftOffsetDistance(value: number);
|
|
69
90
|
get preserveEllipticalArcs(): boolean;
|
|
70
91
|
set preserveEllipticalArcs(value: boolean);
|
|
71
|
-
/**
|
|
92
|
+
/**
|
|
93
|
+
* Convert variant input into OffsetOptions.
|
|
72
94
|
* * If a JointOptions is provided, it is captured.
|
|
73
|
-
* * If an OffsetOptions is provided, a reference to it is returned.
|
|
95
|
+
* * If an OffsetOptions is provided, a reference to it is returned.
|
|
96
|
+
*/
|
|
74
97
|
static create(offsetDistanceOrOptions: number | JointOptions | OffsetOptions): OffsetOptions;
|
|
75
98
|
/** Convert variant input into offset distance */
|
|
76
99
|
static getOffsetDistance(offsetDistanceOrOptions: number | JointOptions | OffsetOptions): number;
|
|
@@ -82,7 +105,7 @@ export declare class OffsetOptions {
|
|
|
82
105
|
* @internal
|
|
83
106
|
*/
|
|
84
107
|
export declare class PolygonWireOffsetContext {
|
|
85
|
-
/**
|
|
108
|
+
/** Construct a context. */
|
|
86
109
|
constructor();
|
|
87
110
|
private static _unitAlong;
|
|
88
111
|
private static _unitPerp;
|
|
@@ -90,13 +113,17 @@ export declare class PolygonWireOffsetContext {
|
|
|
90
113
|
private static _offsetB;
|
|
91
114
|
private static createOffsetSegment;
|
|
92
115
|
/**
|
|
93
|
-
* Construct
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
116
|
+
* Construct a wire (not area) that is offset from given polyline or polygon (which must be in xy-plane or in
|
|
117
|
+
* a plane parallel to xy-plane).
|
|
118
|
+
* * This is a simple wire offset (in the form of a line string), not an area.
|
|
119
|
+
* * If offsetDistance is given as a number, default OffsetOptions are applied.
|
|
120
|
+
* * See [[JointOptions]] class doc for offset construction rules.
|
|
121
|
+
* @param points a single loop or path
|
|
122
|
+
* @param wrap true to offset the wraparound joint. Assumes first = last point.
|
|
123
|
+
* @param offsetDistanceOrOptions offset distance (positive to left of curve, negative to right) or JointOptions
|
|
124
|
+
* object.
|
|
98
125
|
*/
|
|
99
|
-
constructPolygonWireXYOffset(points: Point3d[], wrap: boolean, leftOffsetDistanceOrOptions: number | JointOptions):
|
|
126
|
+
constructPolygonWireXYOffset(points: Point3d[], wrap: boolean, leftOffsetDistanceOrOptions: number | JointOptions): CurveChain | undefined;
|
|
100
127
|
}
|
|
101
128
|
/**
|
|
102
129
|
* Context for building a wire offset from a Path or Loop of CurvePrimitives
|
|
@@ -107,14 +134,14 @@ export declare class CurveChainWireOffsetContext {
|
|
|
107
134
|
constructor();
|
|
108
135
|
/**
|
|
109
136
|
* Annotate a CurvePrimitive with properties `baseCurveStart` and `baseCurveEnd`.
|
|
110
|
-
*
|
|
111
|
-
* @param cp primitive to annotate
|
|
137
|
+
* @param cp curve primitive to annotate
|
|
112
138
|
* @param startPoint optional start point
|
|
113
139
|
* @param endPoint optional end point
|
|
140
|
+
* @return the input CurvePrimitive with annotations
|
|
114
141
|
*/
|
|
115
142
|
static applyBasePoints(cp: CurvePrimitive | undefined, startPoint: Point3d | undefined, endPoint: Point3d | undefined): CurvePrimitive | undefined;
|
|
116
143
|
/**
|
|
117
|
-
* Create the offset of a single primitive.
|
|
144
|
+
* Create the offset of a single primitive as viewed in the xy-plane (ignoring z).
|
|
118
145
|
* * each primitive may be labeled (as an `any` object) with start or end point of base curve:
|
|
119
146
|
* * `(primitive as any).baseCurveStart: Point3d`
|
|
120
147
|
* * `(primitive as any).baseCurveEnd: Point3d`
|
|
@@ -124,15 +151,10 @@ export declare class CurveChainWireOffsetContext {
|
|
|
124
151
|
static createSingleOffsetPrimitiveXY(g: CurvePrimitive, offsetDistanceOrOptions: number | OffsetOptions): CurvePrimitive | CurvePrimitive[] | undefined;
|
|
125
152
|
/**
|
|
126
153
|
* Construct curves that are offset from a Path or Loop as viewed in xy-plane (ignoring z).
|
|
127
|
-
* * The construction will remove "some" local effects of features smaller than the offset distance, but will
|
|
154
|
+
* * The construction will remove "some" local effects of features smaller than the offset distance, but will
|
|
155
|
+
* not detect self intersection among widely separated edges.
|
|
128
156
|
* * If offsetDistance is given as a number, default OffsetOptions are applied.
|
|
129
|
-
* *
|
|
130
|
-
* * If the turn is larger than `options.minArcDegrees`, a circular arc is constructed.
|
|
131
|
-
* * If the turn is less than or equal to `options.maxChamferTurnDegrees`, extend curves along tangent to single intersection point.
|
|
132
|
-
* * If the turn is larger than `options.maxChamferDegrees`, the turn is constructed as a sequence of straight lines that are:
|
|
133
|
-
* * outside the arc
|
|
134
|
-
* * have uniform turn angle less than `options.maxChamferDegrees`
|
|
135
|
-
* * each line segment (except first and last) touches the arc at its midpoint.
|
|
157
|
+
* * See [[JointOptions]] class doc for offset construction rules.
|
|
136
158
|
* @param curves base curves.
|
|
137
159
|
* @param offsetDistanceOrOptions offset distance (positive to left of curve, negative to right) or options object.
|
|
138
160
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PolygonOffsetContext.d.ts","sourceRoot":"","sources":["../../../../src/curve/internalContexts/PolygonOffsetContext.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAY,MAAM,kCAAkC,CAAC;AAGrE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"PolygonOffsetContext.d.ts","sourceRoot":"","sources":["../../../../src/curve/internalContexts/PolygonOffsetContext.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAY,MAAM,kCAAkC,CAAC;AAGrE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGjE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAejD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,YAAY;IACvB;;;OAGG;IACI,aAAa,SAAS;IAC7B,iHAAiH;IAC1G,qBAAqB,SAAM;IAClC;;;;;;;;OAQG;IACI,oBAAoB,UAAS;IACpC,uDAAuD;IAChD,kBAAkB,EAAE,MAAM,CAAK;IACtC,0GAA0G;IACnG,sBAAsB,UAAS;IACtC;;;;OAIG;gBAED,kBAAkB,EAAE,MAAM,EAAE,aAAa,SAAM,EAAE,iBAAiB,SAAK,EACvE,sBAAsB,UAAQ,EAAE,oBAAoB,UAAQ;IAQ9D,2BAA2B;IACpB,KAAK,IAAI,YAAY;IAM5B,mCAAmC;IAC5B,OAAO,CAAC,KAAK,EAAE,YAAY;IAOlC;;;;;OAKG;WACW,MAAM,CAAC,2BAA2B,EAAE,MAAM,GAAG,YAAY,GAAG,YAAY;IAKtF;kGAC8F;IACvF,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAGrC,2EAA2E;IACpE,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;CAY9C;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,yDAAyD;IAClD,YAAY,EAAE,YAAY,CAAC;IAClC,qDAAqD;IAC9C,aAAa,EAAE,aAAa,CAAC;IACpC,8CAA8C;gBAClC,uBAAuB,EAAE,MAAM,GAAG,YAAY,EAAE,aAAa,CAAC,EAAE,aAAa;IAIzF,IAAW,aAAa,IAAI,MAAM,CAEjC;IACD,IAAW,aAAa,CAAC,KAAK,EAAE,MAAM,EAErC;IACD,IAAW,qBAAqB,IAAI,MAAM,CAEzC;IACD,IAAW,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAE7C;IACD,IAAW,oBAAoB,IAAI,OAAO,CAEzC;IACD,IAAW,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAE7C;IACD,IAAW,kBAAkB,IAAI,MAAM,CAEtC;IACD,IAAW,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAE1C;IACD,IAAW,sBAAsB,IAAI,OAAO,CAE3C;IACD,IAAW,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAE/C;IACD;;;;OAIG;WACW,MAAM,CAAC,uBAAuB,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,GAAG,aAAa;IAKnG,iDAAiD;WACnC,iBAAiB,CAAC,uBAAuB,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,GAAG,MAAM;IAKvG,2BAA2B;IACpB,KAAK,IAAI,aAAa;CAG9B;AAiZD;;;GAGG;AACH,qBAAa,wBAAwB;IACnC,2BAA2B;;IAE3B,OAAO,CAAC,MAAM,CAAC,UAAU,CAAqB;IAC9C,OAAO,CAAC,MAAM,CAAC,SAAS,CAAqB;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoB;IAE3C,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAelC;;;;;;;;;;OAUG;IACI,4BAA4B,CACjC,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,2BAA2B,EAAE,MAAM,GAAG,YAAY,GACnF,UAAU,GAAG,SAAS;CAwD1B;AAED;;;GAGG;AACH,qBAAa,2BAA2B;IACtC,2BAA2B;;IAE3B;;;;;;OAMG;WACW,eAAe,CAC3B,EAAE,EAAE,cAAc,GAAG,SAAS,EAAE,UAAU,EAAE,OAAO,GAAG,SAAS,EAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,GAC7F,cAAc,GAAG,SAAS;IAS7B;;;;;;;OAOG;WACW,6BAA6B,CACzC,CAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,GAAG,aAAa,GACjE,cAAc,GAAG,cAAc,EAAE,GAAG,SAAS;IAehD;;;;;;;;OAQG;WACW,sBAAsB,CAClC,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,uBAAuB,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,GAClF,eAAe,GAAG,SAAS;CA6C/B"}
|